python 去除二维数组/二维列表中的重复行方法

PythonBiglove 2019-01-23

之前提到去除一维数组中的重复元素用unique()函数,如果要去除二维数组中的重复行该怎么操作呢?

import numpy as np
arr = np.array([[1, 2],[3, 4],[5, 6],[7, 8],[3, 4],[1, 2]])
print(np.array(list(set([tuple(t) for t in arr]))))

输出:

[[1 2]
[3 4]
[5 6]
[7 8]]

如果是二维列表,列表中每个元素还是列表

list2=list(set([tuple(t) for t in list1]))

必须先把列表中每个元素转化为tuple,因为list不可哈希但是tuple可哈希。

相关推荐