熊猫掉落功能无法在for循环中使用?

发布于 2021-01-29 16:16:30

所有!我对此很困惑,因为我一生无法弄清错误。我正在尝试遍历数据帧中的所有字符串,并删除不包含字符串“ Barry Bonds”的字符串。

到目前为止,我已经能够按索引删除行:

bb_db.drop(bb_db.index[1])

这可以成功地删除该索引处的行,但是当我将其放入此for循环时:

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)

我得到了整个数据帧,即使i变量在if语句为true的情况下打印出大量索引时也是如此。

谢谢!

关注者
0
被浏览
160
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    drop除非您要求,否则不会更改您当前的DataFrame inplace=True

    话虽如此,for循环几乎肯定不是这里最简单的方法。为什么不使用str列上的访问器(即使用boolean索引)str.contains

    bb_db[~bb_db.player_names.str.contains('Barry Bonds')]
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看