有条件删除重复的pandas python

Mor*_*cco 8 python numpy dataframe python-2.7 pandas

有没有办法在大约10列和400,000行的pandas数据帧中有条件地删除重复项(特别是使用drop_duplicates)?也就是说,我想保留所有具有2列的行满足条件:如果日期(列)和存储(列)#的组合是唯一的,则保持行,其他方面,删除.

Zer*_*ero 6

使用drop_duplicates返回数据帧与重复的行删除,可选择只考虑某些列

让初始数据帧如下

In [34]: df
Out[34]:
  Col1 Col2  Col3
0    A    B    10
1    A    B    20
2    A    C    20
3    C    B    20
4    A    B    20
Run Code Online (Sandbox Code Playgroud)

如果您想从某些列中获取唯一组合 'Col1', 'Col2'

In [35]: df.drop_duplicates(['Col1', 'Col2'])
Out[35]:
  Col1 Col2  Col3
0    A    B    10
2    A    C    20
3    C    B    20
Run Code Online (Sandbox Code Playgroud)

如果要采用所有列的唯一组合

In [36]: df.drop_duplicates()
Out[36]:
  Col1 Col2  Col3
0    A    B    10
1    A    B    20
2    A    C    20
3    C    B    20
Run Code Online (Sandbox Code Playgroud)