numpy.ma.average
-
numpy.ma.average(a, axis=None, weights=None, returned=False)[source] -
Возвращает взвешенное среднее значение массива по заданной оси.
- Параметры
-
-
aarray_like -
Данные, которые нужно усреднить. Маскированные элементы не учитываются при вычислении.
-
axisint, optional -
Ось, по которой нужно усреднить
a. Если None, усреднение выполняется по уплощенному массиву. -
weightsarray_like, optional -
Значение важности каждого элемента при вычислении среднего. Массив весов может быть одномерным (в этом случае его длина должна быть равна размеру
aпо заданной оси) или иметь такую же форму, как иa. Еслиweights=None, то все данные вaпредполагаются с весом, равным единице. Вычисление по одномерному массиву:avg = sum(a * weights) / sum(weights)
Единственное ограничение для
weights—sum(weights)не должно быть равно 0. -
returnedbool, optional -
Флаг, указывающий, нужно ли возвращать кортеж
(result, sum of weights)в качестве результата (True), или только результат (False). По умолчанию False.
-
- Возвращает
-
-
average, [sum_of_weights](tuple of) scalar or MaskedArray -
Среднее значение по заданной оси. Если возвращается кортеж
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)
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/generated/numpy.ma.average.html