Если у вас уже есть массив numpy, вы можете использовать np.unique
и использовать флаг return_inverse
. Используйте обратный массив, чтобы найти все позиции, где количество уникальных элементов превышает 1, и найти их индексы.
import numpy as np
arr = np.array([[10,10],[3,6],[2,4],[10,10],[0,0],[2,4]])
vals, inverse, count = np.unique(arr,
return_inverse=True,
return_counts=True,
axis=0)
out = np.where(count[inverse] > 1)[0] #find all indices where counts > 1
print(out) #array([0, 2, 3, 5], dtype=int64)