Если x
содержит только неотрицательные целые числа, а если max(x)
не слишком велико, вы можете использовать numpy.bincount
:
In [230]: x = [1,2,3,3,4,5,6,6,7,8]
In [231]: counts = np.bincount(x)
In [232]: np.where(counts == counts.max())[0]
Out[232]: array([3, 6])
Массив counts
будетимеют длину max(x)+1
, поэтому, если max(x)
огромен, вы, возможно, не захотите его использовать.
Этот метод может быть значительно быстрее, чем использование numpy.unique
.