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