如何在pandas dataframe中删除带有重复项的行?

时间:2016-09-27 14:18:06

标签: python pandas indexing duplicates multiple-columns

让数据框包含两列(AB)中的重复值:

A B
1 2
2 3
4 5
7 6
5 8

我想删除重复项,以便只保留唯一值:

A B
1 2
4 5
7 6

此命令未提供我想要的内容:

df.drop_duplicates(subset=['A','B'], keep='first')

知道怎么做吗?

1 个答案:

答案 0 :(得分:2)

您可以stack使用unstack

print (df.stack().drop_duplicates().unstack().dropna().astype(int))
   A  B
0  1  2
2  4  5
3  7  6

boolean indexing的解决方案:

print (df[~df.stack().duplicated().unstack().any(1)])
   A  B
0  1  2
2  4  5
3  7  6