numpy的统计函数
numpy直接提供统计类函数
np.std()
np.var()
np.average()
- numpy的统计函数(1)
Axis=none是统计函数的标配参数
import numpy as np a=np.arange(15).reshape(3,5) print(a) [[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14]] print(np.sum(a)) #对数组内所有元素求和 105 print(np.sum(a,axis=0)) [15 18 21 24 27] #对数组内行列求和,axis=0,数组列求和,axis=1,数组行求和 print(np.sum(a,axis=1)) [10 35 60] print(np.average(a)) #对数组内所有元素求平均值 7.0 print(np.average(a,axis=0)) #对数组内列进行加权平均 [5. 6. 7. 8. 9.] print(np.average(a,axis=1)) #对数组内行进行加权平均 [ 2. 7. 12.] print(np.std(a)) #对数组求标准差 4.320493798938574 print(np.std(a,axis=0)) #对数组的列求标准差 [4.0824829 4.0824829 4.0824829 4.0824829 4.0824829] print(np.std(a,axis=1)) #对数组的行求标准差 [1.41421356 1.41421356 1.41421356] print(np.var(a)) #对数组进行求方差 18.666666666666668 print(np.var(a,axis=0)) #对数组的列进行求方差 [16.66666667 16.66666667 16.66666667 16.66666667 16.66666667] print(np.var(a,axis=1)) #对数组的行进行求方差 [2. 2. 2.]
- numpy的统计函数(2)
import numpy as np a=np.random.randint(1,100,(3,4)) print(a) [[42 11 9 84] [57 94 64 93] [85 3 41 38]] print(np.max(a)) #数组中最大值 94 print(np.min(a)) #数组中的最小值 3 print(np.argmax(a)) #返回数组扁平化之后,最大值的下标 5 print(np.argmin(a)) #返回数组扁平化之后,最小值的下标 9 print(np.unravel_index(np.argmax(a),(2,6))) #将a扁平化后的最大值小标,转化为结构为(2,6)的下标。 (0, 5) print(np.ptp(a)) #返回最大值与最小值的差 91 print(np.median(a)) #返回数组a中元素的中位数(中值) 49.5
numpy的梯度函数
**
- 一维数组的梯度
**
import numpy as np a=np.random.randint(1,20,(8)) print(a) [17 12 2 7 12 17 9 11] b=np.gradient(a) print(b) [-5. -7.5 -2.5 5. 5. -1.5 -3. 2. ]
**
- 二维数组的梯度
**
import numpy as np a=np.random.randint(1,20,(3,5)) print(a) [[ 6 3 12 3 7] [19 2 6 3 18] [ 7 3 19 2 8]] b=np.gradient(a) print(b) [array([[ 13. , -1. , -6. , 0. , 11. ], [ 0.5, 0. , 3.5, -0.5, 0.5], [-12. , 1. , 13. , -1. , -10. ]]), array([[ -3. , 3. , 0. , -2.5, 4. ], [-17. , -6.5, 0.5, 6. , 15. ], [ -4. , 6. , -0.5, -5.5, 6. ]])]