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的區別詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

