1. 程式人生 > >NumPy 學習筆記(四)

NumPy 學習筆記(四)

加權 one false ims 筆記 input arr ntile none

NumPy 算術函數:

  1、numpy.reciprocal(arr) 返回參數逐個元素的倒數

  2、numpy.power(one, two) 將第一個輸入數組中的元素作為底數,計算它與第二個輸入數組中相應元素的,即 one^two

  3、numpy.mod(x1, x2) 計算輸入數組中相應元素的余數,函數 numpy.remainder(x1, x2) 也產生相同的結果

import numpy as np

arr = np.array([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]])
print("reciprocal arr: 
", np.reciprocal(arr)) print("power by 2: ", np.power(arr, 2)) print("mod by arr.T: ", np.mod(arr, arr.T)) print("remainder by arr.T: ", np.remainder(arr, arr.T))

NumPy 統計函數:

  1、numpy.amax(a, axis=None, out=None, keepdims=<no value>, initial=<no value>)

    和 numpy.max(a, axis=None, out=None, keepdims=<no value>, initial=<no value>)

    用於計算數組中的元素沿指定軸的最大值,若未給定 axis 的值,則默認選出數組裏最大的數

  2、numpy.amin() 和 numpy.min() 的格式與上面一樣,其返回最小值

  3、numpy.ptp(a, axis=None, out=None, keepdims=<no value>) 計算數組中元素最大值與最小值的差

  4、numpy.percentile(a, q, axis) a 表示一個數組對象,q 表示要計算的百分數(0-100),axis 是軸,返回大於等於 q% 個數的那個數

  5、numpy.median(a, axis=None, out=None, overwrite_input=False, keepdims=False) 計算 a 的中位數

  6、numpy.mean(a, axis=None, dtype=None, out=None, keepdims=<no value>) 返回數組中元素的算術平均值

    如果提供了軸,則沿其計算

  7、numpy.average(a, axis=None, weights=None, returned=False) 根據 weights 中給出的各自的權重計算數組中元素的加權平均值

    returned=True 時則返回權重的和,當 weights.shape != a.shape 時必須指定軸

  8、numpy.std(a, axis=None, dtype=None, out=None, ddof=0, keepdims=<no value>) 計算標準差

  9、numpy.var(a, axis=None, dtype=None, out=None, ddof=0, keepdims=<no value>) 計算方差

import numpy as np

arr = np.array([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]])
# numpy.amax(a, axis=None, out=None, keepdims=<no value>, initial=<no value>) # numpy.amin(a, axis=None, out=None, keepdims=<no value>, initial=<no value>) # numpy.max 和 numpy.min 的格式和上面一樣 print("max: ", np.amax(arr, axis=1)) print("max: ", np.max(arr)) print("min: ", np.amin(arr)) print("min: ", np.min(arr, axis=1)) # numpy.ptp(a, axis=None, out=None, keepdims=<no value>) 計算數組中元素最大值與最小值的差(最大值 - 最小值) print("ptp(arr, axis=0): ", np.ptp(arr, axis=0)) print("ptp(arr, axis=1): ", np.ptp(arr, axis=1)) print("ptp(arr): ", np.ptp(arr)) # numpy.percentile(a, q, axis) a 表示一個對象,q 表示要計算的百分數(0-100),axis 是軸 # 選出在數組 arr 裏大於等於 50% 數的那個數 print("percentile(arr, 50): ", np.percentile(arr, 50)) # 5.0 # 按 1 軸選出大於等於 0% 的數的那個數,即最小值 # [1. 4. 7.] print("percentile(arr, 0, axis=1): ", np.percentile(arr, 0, axis=1)) # 按 1 軸選出大於等於 100% 的數的那個數,即最大值 # [3. 6. 9.] print("percentile(arr, 100, axis=1): ", np.percentile(arr, 100, axis=1)) # 若所求百分數不能剛好對應數組裏的數,則會在前後兩個數之間取平均值 print(np.percentile(np.array([1., 2., 3., 4., 5., 6.]), 50)) # 3.5 print(np.percentile(np.array([1., 2., 3., 4., 5., 6.]), 70)) # 4.5 # numpy.median(a, axis=None, out=None, overwrite_input=False, keepdims=False) 計算 a 的中位數 print("median(arr, axis=0): ", np.median(arr, axis=0)) # [4. 5. 6.] print("median(arr, axis=1): ", np.median(arr, axis=1)) # [2. 5. 8.] # numpy.mean(a, axis=None, dtype=None, out=None, keepdims=<no value>) # 返回數組中元素的算術平均值。 如果提供了軸,則沿其計算 print("mean(arr): ", np.mean(arr)) # 5.0 print("mean(arr, axis=1): ", np.mean(arr, axis=1)) # [2. 5. 8.] # numpy.average(a, axis=None, weights=None, returned=False) # 根據 weights 中給出的各自的權重計算數組中元素的加權平均值 # returned=True 則返回權重的和 # 當 weights.shape != a.shape 時必須指定軸 print("average: ", np.average(arr, axis=1, weights=np.array([1, 2, 3]), returned=True)) # numpy.std(a, axis=None, dtype=None, out=None, ddof=0, keepdims=<no value>) 計算標準差 print("std(arr): ", np.std(arr)) # 2.581988897471611 print("std(arr, axis=1): ", np.std(arr, axis=1)) # [0.81649658 0.81649658 0.81649658] # numpy.var(a, axis=None, dtype=None, out=None, ddof=0, keepdims=<no value>) 計算方差 print("var(arr): ", np.var(arr)) # 6.666666666666667 print("var(arr, axis=0): ", np.var(arr, axis=0)) # [6. 6. 6.]

NumPy 學習筆記(四)