今天小編就爲大家分享一篇在Python3 numpy中mean和average的區別詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
mean和average都是計算均值的函數,在不指定權重的時候average和mean是一樣的。指定權重後,average可以計算一維的加權平均值。
具體如下:
import numpy as np a = np.array([np.random.randint(0, 20, 5), np.random.randint(0, 20, 5)]) print('原始數據\n', a) print('mean函數'.center(20, '*')) print('對所有數據計算\n', a.mean()) print('axis=0,按行方向計算,即每列\n', a.mean(axis=0)) # 按行方向計算,即每列 print('axis=1,按列方向計算,即每行\n', a.mean(axis=1)) # 按列方向計算,即每行 print('average函數'.center(20, '*')) print('對所有數據計算\n', np.average(a)) print('axis=0,按行方向計算,即每列\n', np.average(a, axis=0)) # 按行方向計算,即每列 print('axis=1,按列方向計算,即每行\n', np.average(a, axis=1)) # 按列方向計算,即每行 b = np.array([1, 2, 3, 4]) wts = np.array([4, 3, 2, 1]) print('不指定權重\n', np.average(b)) print('指定權重\n', np.average(b, weights=wts))
運行結果:
原始數據 [[10 12 7 14 5] [12 10 2 16 7]] *******mean函數******* 對所有數據計算 9.5 axis=0,按行方向計算,即每列 [ 11. 11. 4.5 15. 6. ] axis=1,按列方向計算,即每行 [ 9.6 9.4] *****average函數****** 對所有數據計算 9.5 axis=0,按行方向計算,即每列 [ 11. 11. 4.5 15. 6. ] axis=1,按列方向計算,即每行 [ 9.6 9.4] 不指定權重 2.5 指定權重 2.0
以上這篇在Python3 numpy中mean和average的區別詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持神馬文庫。