不一样的numpy解mode

import numpy as np

nums = np.random.randint(1, 10, size = 20)
counter = np.bincount(nums)
mode = np.argmax(counter)
print(mode)

其中bincount()返回的值也是一个数组,这个数组比较特殊,数组的数值对应的索引在原数组中出现的次数。

# 我们可以看到x中最大的数为7,因此bin的数量为8,那么它的索引值为0->7
x = np.array([0, 1, 1, 3, 2, 1, 7])
# 索引0出现了1次,索引1出现了3次......索引5出现了0次......
np.bincount(x)
#因此,输出结果为:array([1, 3, 1, 1, 0, 0, 0, 1])

# 我们可以看到x中最大的数为7,因此bin的数量为8,那么它的索引值为0->7
x = np.array([7, 6, 2, 1, 4])
# 索引0出现了0次,索引1出现了1次......索引5出现了0次......
np.bincount(x)
#输出结果为:array([0, 1, 1, 0, 1, 0, 1, 1])

argmax返回的是最大数的索引.argmax有一个参数axis,默认是0,表示每一列的最大值的索引 axis=1表示每一行的最大值的索引

 

你可能感兴趣的:(Python,numpy,python)