numpy 加权平均值


average函数

沿着指定的轴计算加权平均值。


加权平均值的数学定义

若有n个数x1,x2,……,xn的权分别是w1,w2,……,wn,则这n个数的加权平均值average(x)=(x1w1+x2w2+……xnwn)/(w1+w2+……+wn)。


语法


参数

参数 描述
a 包含要平均的数据的数组。如果不是数组,则尝试转换。
axis

整数,可选。

指定沿哪个轴求a的平均值。如果没有,平均是扁平化的数组。

weights

数组,可选。

与a中的值相关联的权重数组。a中的每个值根据其关联的权重对平均值作出贡献。weights数组可以是一维的(在这种情况下,它的长度必须是沿着给定轴的a的大小),也可以是与a相同的形状。如果weights=None,那么假设a中的所有数据的权值都等于1。

returned

布尔值,可选。默认为False。

如果为True, 则返回weights的平均值,否则仅返回a的平均值。


实例


import numpy as np

a = np.linspace(1,5,5)
print(a)
[1. 2. 3. 4. 5.]
b= np.average(a)
print(b)
3.0

linspace函数参考numpy linspace


import numpy as np

a = np.arange(6).reshape(3,2)
print(a)
b=np.average(a,axis=1)
print(b)
c = np.average(a,axis=1,weights=[1./4,3./4])
print(c)

结果:


[[0 1]
 [2 3]
 [4 5]]

[0.5 2.5 4.5]

[0.75 2.75 4.75]



公众号

关注公众号,获取一手资讯

“ numpy 加权平均值 ” comments 0

评论/回复

电子邮件地址不会被公开。 必填项已用*标注