numpy中怎么得到向量中出现次数最多的元素值?

输入一个向量x,元素值非负, 要求得到x中出现次数最多的元素值

1
2
3
4
5
6
import numpy as np
x = np.array([1, 3, 5, 5, 7, 9])

count = np.bincount(x)
> array([0, 1, 0, 1, 0, 1, 0, 1, 0, 1], dtype=int64)
argmax_value = np.argmax(count)

函数bincount(x) 的作用是返回一个长度为x中最大元素+1的np.ndarray,其中每个元素对应于其索引值在x中出现的次数,比如位置1上的值为2,表示1在x中出现了两次。