numpy.ma.average

ma.average(a, axis=None, weights=None, returned=False)[源代码]

返回给定轴上数组的加权平均值。

参数
aarray_like

数据平均。计算中不考虑屏蔽条目。

axis可选的

沿其平均的轴 a . 如果没有,则对展平阵列进行平均。

weights阵列式,可选

每个元素在计算平均值中的重要性。权重数组可以是一维的(在这种情况下,其长度必须是 a 沿给定轴)或与 a .如果 weights=None ,然后输入所有数据 a 假设重量等于1。一维计算为:

avg = sum(a * weights) / sum(weights)

唯一的限制 weights 那是 sum(weights) 不能为0。

returned可选的布尔

指示元组 (result, sum of weights) 应返回为输出(true),或仅返回结果(false)。默认值为假。

返回
[average, [sum_of_weights]](元组of)标量或屏蔽数组

沿指定轴的平均值。当返回是 True ,返回一个以平均值为第一个元素,权重和为第二个元素的元组。返回类型为 np.float64 如果 a 是整数类型,浮点数小于 float64 或者输入数据类型,否则。如果返回, sum_of_weights 总是 float64 .

实例

>>> a = np.ma.array([1., 2., 3., 4.], mask=[False, False, True, True])
>>> np.ma.average(a, weights=[3, 1, 0, 0])
1.25
>>> x = np.ma.arange(6.).reshape(3, 2)
>>> x
masked_array(
  data=[[0., 1.],
        [2., 3.],
        [4., 5.]],
  mask=False,
  fill_value=1e+20)
>>> avg, sumweights = np.ma.average(x, axis=0, weights=[1, 2, 3],
...                                 returned=True)
>>> avg
masked_array(data=[2.6666666666666665, 3.6666666666666665],
             mask=[False, False],
       fill_value=1e+20)