在熊猫中删除行

时间:2013-07-23 21:12:06

标签: pandas

我一次在Pandas中迭代一行数据帧。我正在检查该行是否符合某些条件。然后,我想丢弃这一行。我怎么能做到这一点?

2 个答案:

答案 0 :(得分:1)

这取决于您是否保留它的标准,一种简单的方法是创建测试功能:

In [11]: def keep_row(row):
             return True  # you may want to make this stricter...

In [12]: df.apply(keep_row, axis=1)

然后你只能保留那些好的行:

In [13]: df = df[df.apply(keep_row, axis=1)]

如果你可以通过某种方式进行矢量化(使用numpy来描述)保持行的条件,可能会更快,但如果没有具体的例子,很难建议如何。

答案 1 :(得分:0)

大熊猫的第一条规则是,如果你在行中迭代,你可能做错了。要删除符合条件的行,只需选择不符合条件的行,例如你想要删除列A ==“rrr”:

的行
df = df[df.A!="rrr"]