numpy.ma.average
-
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–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.ma.average.html