全部!我对此感到非常困惑,因为我的一生无法弄清楚这个错误。我正在尝试浏览数据框架中的所有字符串,并删除不包含" Barry Bonds"字符串的字符串。
到目前为止,我已经设法通过其索引排出行:
bb_db.drop(bb_db.index[1])
这成功地将行放在该索引上,但是当我将其扔进此循环时:
for i in range(len(bb_db)):
if 'Barry Bonds' in bb_db['player_names'][i]:
bb_db.drop(bb_db.index[i])
print (i)
我获得了整个数据框
谢谢!
drop
除非您要求使用inplace=True
,否则不会突变您当前的数据帧。
str
访问者的布尔索引,即用str.contains
进行索引。 bb_db[~bb_db.player_names.str.contains('Barry Bonds')]
这应该有效
for i in range(len(bb_db)):
if 'Barry Bonds' in bb_db['player_names'][i]:
bb_db = bb_db.drop(bb_db.index[i])
# or this works too..
# bb_db.drop(bb_db.index[i], inplace=True)
print (i)