首页 > 其他 > 详细

【转】numpy中mean和average的区别

时间:2019-04-02 14:25:51      阅读:150      评论:0      收藏:0      [点我收藏+]

转自:https://blog.csdn.net/Muzi_Water/article/details/85104941


 

 

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

 

【转】numpy中mean和average的区别

原文:https://www.cnblogs.com/xianhan/p/10642181.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!