【发布时间】:2016-11-18 02:36:54
【问题描述】:
我有下面的数据
a b
1 12 1
2 14 2
3 12 3
4 12 3
5 14 1
6 12 4
我必须根据 (a) 列对数据进行分组。之后我必须删除具有相同 (b) 值的行。下面我展示了它应该是什么样子,
a b
1 12 1
2 12 4
3 14 1
4 14 2
pandas 中是否有任何简单的方法可以做到这一点?
【问题讨论】:
我有下面的数据
a b
1 12 1
2 14 2
3 12 3
4 12 3
5 14 1
6 12 4
我必须根据 (a) 列对数据进行分组。之后我必须删除具有相同 (b) 值的行。下面我展示了它应该是什么样子,
a b
1 12 1
2 12 4
3 14 1
4 14 2
pandas 中是否有任何简单的方法可以做到这一点?
【问题讨论】:
您可以使用指定为False 的keep 参数删除重复项:
import pandas as pd
df.drop_duplicates(keep=False)
# a b
#1 12 1
#2 14 2
#5 14 1
#6 12 4
如果数据框中的列比较多,列可以显式指定为df.drop_duplicates(['a', 'b'], keep=False)
【讨论】: