当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Python NumPy average方法用法及代码示例

Numpy 的 average(~) 方法计算沿指定轴的加权平均值。

参数

1. a | array-like

输入数组。

2. axis | Noneinttupleint | optional

计算平均值所沿的轴。

意义

0

逐行计算平均值

1

逐列计算平均值

None

用于计算平均值的所有值

3. weights | axis | optional

包含权重的数组。尺寸必须为 1D,大小等于 a 的尺寸,或与 a 完全相同的形状。默认情况下, weights=None ,即,将计算一个简单平均值。

4. return | boolean | optional

是否想要返回权重总和。默认情况下 return=False

返回值

如果轴未设置,则返回标量。否则,返回加权平均值的 Numpy 数组。

例子

基本用法

考虑以下:

a = np.array([1,2,3])
np.average(a, weights=[0,2,4])



2.6667

这里,加权平均值为:

(1*0 + 2*2 + 3*4) / (0+2+4) = 2.6667

获取加权平均值的总和

要获得所用加权的总和(即 0+2+4=6 ),请设置 returned=True

np.average([1,2,3], weights=[0,2,4], returned=True)



(2.6666666666666665, 6.0)

计算二维数组的加权平均值

假设我们有以下二维数组:

a = np.array([[1,2],[3,4]])
a



array([[1, 2],
       [3, 4]])
所有值的加权平均值

计算所有值的加权平均值:

np.average(a, weights=[[5,6],[7,8]])



2.6923076923076925
每列的加权平均值

计算每列的加权平均值,设置 axis=0

np.average(a, weights=[[5,6],[7,8]], axis=0)



array([2.16666667, 3.14285714])
每行的加权平均值

计算每行的加权平均值,设置 axis=1

np.average(a, weights=[[5,6],[7,8]], axis=1)



array([1.54545455, 3.53333333])

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 NumPy | average method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。