python-pandas:按列A删除重复项,这不满足列B中的条件



我在列a中有一个具有重复值的数据帧。我想删除重复项,保留具有其值的行>B列中的0

所以这个:

A B
1 20
1 10
1 -3
2 30
2 -9
2 40
3 10

应该变成这样:

A B
1 20
1 10
2 30
2 40
3 10

关于如何实现这一目标,有什么建议吗?我将不胜感激!

样本中的数据不是双工的,因此仅使用:

df = df[df['B'].gt(0)]
print (df)
A   B
0  1  20
1  1  10
3  2  30
5  2  40
6  3  10

如果有重复:

print (df)
A   B
0  1  20
1  1  10
2  1  10
3  1  10
4  1  -3
5  2  30
6  2  -9
7  2  40
8  3  10
df = df[df['B'].gt(0) & ~df.duplicated()]
print (df)
A   B
0  1  20
1  1  10
5  2  30
7  2  40
8  3  10

最新更新