不定期更新numpy库的一些函数使用。
一、bincount()
作用:统计 列表 中从0开始到最大值的出现次数。
举个例子,np.bincount([0,0,1]) 输出是 [2 1]。
a=[1,1,3,4,1,2,6,6]
np.bincount(a) # [0, 3, 1, 1, 1, 0, 2]
二、argmax()
作用:输出某个方向上最大值的索引。
举个例子
a = np.array([3, 1, 2, 4, 6, 1])
b=np.argmax(a,axis=0)#取出a中元素最大值所对应的索引,此时最大值为6,其对应的位置索引值为4
print(b)
4
二维的axis=0,就是比较列,然后选出最大值索引;
三维的axis=0,就是每个二维矩阵中先取出行组成新矩阵,然后比较列,然后选出最大值索引;
axis=1则表示行方向。
三维中,axis=2,表示对于每个矩阵,先按照行方向取最大值的索引,转成行向量,再叠加。
import numpy as np
a = np.array([
[
[1, 5, 5, 2],
[9, -6, 2, 8],
[-3, 7, -9, 1]
],
[
[-1, 7, -5, 2],
[9, 6, 2, 8],
[3, 7, 9, 1]
],
[
[21, 6, -5, 2],
[9, 36, 2, 8],
[3, 7, 79, 1]
]
])
b=np.argmax(a, axis=1)#对于三维度矩阵,a有三个方向a[0][1][2]
最后输出b如下
[[1, 0, 1],
[1, 0, 2],
[0, 1, 2]]
三、np.argsort()
作用: 对数组进行从小到大的排序,返回排序后索引的数组。
举个例子
a=np.array([6,7,2,4,8,5,1])
np.argsort(a)
[6, 2, 3, 5, 0, 1, 4]
四、随机数
1.np.random.choice()
这篇csdn博客很清楚!