在Python3 numpy中mean和average的区别详解

时间:2021-05-22

mean和average都是计算均值的函数,在不指定权重的时候average和mean是一样的。指定权重后,average可以计算一维的加权平均值。

具体如下:

import numpy as npa = 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.5axis=0,按行方向计算,即每列 [ 11. 11. 4.5 15. 6. ]axis=1,按列方向计算,即每行 [ 9.6 9.4]*****average函数******对所有数据计算 9.5axis=0,按行方向计算,即每列 [ 11. 11. 4.5 15. 6. ]axis=1,按列方向计算,即每行 [ 9.6 9.4]不指定权重 2.5指定权重 2.0

以上这篇在Python3 numpy中mean和average的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章