Python:从多维数组中删除重复项

问题描述

在 Python 中,numpy.unique 可以非常有效地从一维数组中删除所有重复项.

In Python numpy.unique can remove all duplicates from a 1D array, very efficiently.

1) 如何删除二维数组中的重复行或列?

1) How about to remove duplicate rows or columns in a 2D array?

2) nD 数组怎么样?


解决方案

如果可能我会使用 pandas.

If possible I would use pandas.

In [1]: from pandas import *

In [2]: import numpy as np

In [3]: a = np.array([[1, 1], [2, 3], [1, 1], [5, 4], [2, 3]])

In [4]: DataFrame(a).drop_duplicates().values
Out[4]: 
array([[1, 1],
       [2, 3],
       [5, 4]], dtype=int64)

相关文章