1. 程式人生 > >NumPy統計函式

NumPy統計函式

numpy.amin()和numpy.amax()
numpy.amin()用於計算陣列中元素沿著指定軸的最小值。
numpy.amax()用於計算陣列中元素沿著指定軸的最大值

a=np.array([1,3,6],[3,4,11],[6,1,4])
print(np.amin(a,1) #每行最小值
print(np.amin(a,0) #每列最小值
print(np.amax(a)   #所有元素中最大值
print(np.amax(a,1)) #j每行的最大值

結果:

[1 3 1]
[1 1 4]
11
[ 6 11  6]

** numpy.ptp()
用來計算陣列中元素的最大值與最小值的差(最大值-最小值)。

numpy.percentile()**
表示百分比
numpy.percentile(a,q,axis)

  • a:輸入陣列
  • q:要計算的百分位數
  • axis:沿著它計算百分位數的軸
    對於一個數組,我們設定它的百分位數為20,則我們可以推算出在該陣列排序中在百分之20上的值是多少,例如:
# percentail百分數
a = np.array([[21, 60, 4], [10, 20, 1]])
print('陣列a:')
print(a)

print('呼叫 percentile() 函式:')
# 50% 的分位數,就是 a 裡排序之後的中位數
print(np.percentile(a, 20))
# axis 為 0,在縱列上求
print(np.percentile(a, 20, axis=0))
# axis 為 1,在橫行上求
print(np.percentile(a, 20, axis=1))
# 保持維度不變
print(np.percentile(a, 20, axis=1, keepdims=True))

結果:

陣列a:
[[21 60  4]
 [10 20  1]]
呼叫 percentile() 函式:
4.0
[12.2 28.   1.6]
[10.8  4.6]
[[10.8]
 [ 4.6]]

Process finished with exit code 0

標準差
std=sqrt(mean((x-x.mean()) * * 2)
其中mean((x-x.mean()) * * 2)是指每個樣本與全體樣本值的平均數之差,即方差,標準差就是方差的平方根。

其它統計函式

numpy.mediam()

用於計算陣列a中元素的中位數

numpy.average()

將各數值乘以相應的權數,然後加總求和得到總體值,再除以總的單位數。即用來計算加權平均數

numpy.mean()

返回陣列元素的算術平均