说我有以下数组:
import numpy as np
data = np.array([[51001, 121, 1, 121212],
[51001, 121, 1, 125451],
[51001, 125, 1, 127653]]
我想仅删除行中前3个元素(前3列)的重复行。
所以我得到的结果是:
print data
[[51001, 121, 1, 121212],
[51001, 125, 1, 127653]]
只要我通过前3列获得唯一的一行,我们保留哪一行和删除哪一行都无关紧要
答案 0 :(得分:2)
这是在pandas中使用drop_duplicates
的单向方法
In [179]: pd.DataFrame(data).drop_duplicates([0, 1, 2]).values
Out[179]:
array([[ 51001, 121, 1, 121212],
[ 51001, 125, 1, 127653]])