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
继续阅读与本文标签相同的文章
-
个人音视频常用工具介绍
2026-05-18栏目: 教程
-
用自定义监控实现 GPU 异常状况的检查与报警
2026-05-18栏目: 教程
-
与你同行,才能无障碍
2026-05-18栏目: 教程
-
分布式Id - redis方式
2026-05-18栏目: 教程
-
HTML5 容器入门解析:支付宝 Hybrid 方案原理与实战
2026-05-18栏目: 教程
