Spec-Zone.ru › NumPy 1.12

numpy.average

numpy.average(a, axis=None, weights=None, returned=False) [source]

Вычислить взвешенное среднее значение по указанной оси.

Параметры:

a : array_like

Массив, содержащий данные для усреднения. Если a не является массивом, производится попытка преобразования.

axis : int, необязательно

Ось, по которой вычисляется среднее a. Если None, усреднение выполняется по уплощенному массиву.

weights : array_like, необязательно

Массив весов, соответствующих значениям в a. Каждое значение в a вносит вклад в среднее значение в соответствии со своим весом. Массив весов может быть одномерным (в этом случае его длина должна быть равна размеру a по заданной оси) или иметь такую же форму, как и a. Если weights=None, то предполагается, что все данные в a имеют вес, равный единице.

returned : bool, необязательно

По умолчанию False. Если True, возвращается кортеж (average, sum_of_weights) , в противном случае возвращается только среднее значение. Если weights=None, sum_of_weights эквивалентно количеству элементов, по которым вычисляется среднее.

Возвращаемые значения:

average, [sum_of_weights] : array_type or double

Возвращает среднее значение по заданной оси. При True, возвращается кортеж со средним значением в качестве первого элемента и суммой весов в качестве второго. Тип возвращаемого значения Float, если a целочисленного типа, в противном случае тип совпадает с типом a. sum_of_weights имеет тот же тип, что и average.

Исключения:

ZeroDivisionError

Если все веса по оси равны нулю. Смотрите numpy.ma.average для версии, устойчивой к этому типу ошибки.

TypeError

Если длина одномерного массива weights не совпадает с формой a по оси.

См. также

mean

ma.average
среднее для массивных массивов — полезно, если ваши данные содержат «пропущенные» значения

Примеры

>>> data = range(1,5)
>>> data
[1, 2, 3, 4]
>>> np.average(data)
2.5
>>> np.average(range(1,11), weights=range(10,0,-1))
4.0
>>> data = np.arange(6).reshape((3,2))
>>> data
array([[0, 1],
       [2, 3],
       [4, 5]])
>>> np.average(data, axis=1, weights=[1./4, 3./4])
array([ 0.75,  2.75,  4.75])
>>> np.average(data, weights=[1./4, 3./4])
Traceback (most recent call last):
...
TypeError: Axis must be specified when shapes of a and weights differ.

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.12.0/reference/generated/numpy.average.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API