Удаление строк с дубликатами в массиве NumPy

У меня есть (N,3) массив numpy значений:

>>> vals = numpy.array([[1,2,3],[4,5,6],[7,8,7],[0,4,5],[2,2,1],[0,0,0],[5,4,3]])
>>> vals
array([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 7],
       [0, 4, 5],
       [2, 2, 1],
       [0, 0, 0],
       [5, 4, 3]])

Я хотел бы удалить строки из массива, которые имеют дублирующее значение. Например, результат для приведенного выше массива должен быть:

>>> duplicates_removed
array([[1, 2, 3],
       [4, 5, 6],
       [0, 4, 5],
       [5, 4, 3]])

Я не знаю, как это эффективно сделать с numpy без петлевания (массив может быть довольно большим). Кто-нибудь знает, как я мог это сделать?

12
задан Divakar 17 July 2017 в 08:24
поделиться