gpt4 book ai didi

python - Pandas drop 函数在 for 循环中不起作用?

转载 作者:太空宇宙 更新时间:2023-11-04 07:59:04 25 4
gpt4 key购买 nike

全部!我对此感到很困惑,而且我一生都无法找出错误。我正在尝试遍历数据框中的所有字符串并删除不包含字符串“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 语句为真。

谢谢!

最佳答案

drop 不会改变您当前的 DataFrame,除非您通过 inplace=True 提出要求。

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

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

关于python - Pandas drop 函数在 for 循环中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43667979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com