关于numpy.bincount()方法的返回值的含义,查了很多资料,真的是看不懂说的啥意思,比较模糊,这里给出我查到资料之后亲自验证的返回值。
import numpy as np
y = np.bincount([3,4,7,3,8,4])
print(y)
打印y结果:[0 0 0 2 2 0 0 1 1]
嗯?这是什么意思?不应该打印六个数字出现的次数吗?
一开始看到这个结果我有点懵,那么看下这究竟代表什么含义吧。
首先,官方给出的含义是:bin的数量比x中的最大值大1,每个bin给出了它的索引值在x中出现的次数。
那么,这里我给出更加容易理解的解释:
首先看,原数组中的数字最大值是8
那么,返回结果应该是含有九个数字(0-8共九个数字)的列表:代表原列表中0-8共9个数字出现的次数
结合原列表具体看:
[0 0 0 2 2 0 0 1 1]中,第一个元素0,代表[3,4,7,3,8,4]中,0出现了0次
第二个元素0,代表[3,4,7,3,8,4]中,1出现了0次
第三个元素0,代表[3,4,7,3,8,4]中,2出现了0次
第四个元素2,代表[3,4,7,3,8,4]中,3出现了2次
第五个元素2,代表[3,4,7,3,8,4]中,4出现了2次
......
第九个元素1,代表[3,4,7,3,8,4]中,8出现了1次