根据pandas中列的值删除行

时间:2014-04-23 13:30:12

标签: python pandas

我有一个这样的数据框:

col.1 : a a a a a b b b c c c
col.2 : 0 0 1 0 0 0 1 0 0 0 0

我想在col.2中遇到1之后删除col.1中类似值的所有值。结果应该是:

col.1 : a a a b b c c c
col.2 : 0 0 1 0 1 0 0 0

有没有办法在熊猫中快速做到这一点?目前我正在使用numpy,它似乎很慢。

1 个答案:

答案 0 :(得分:0)

试试这个:

df['col.2'] = df.groupby('col.1')['col.2'].cumsum()
df['col.2'] = df.groupby('col.1')['col.2'].cumsum()
df = df[df['col.2']<2]