numpy.mean#
-
numpy.mean(a, axis=None, dtype=None, out=None, keepdims=
значение> , *, where=значение> )[источник]# Вычисляет среднее арифметическое вдоль указанной оси.
Возвращает среднее значение элементов массива. Среднее берется по сглаженному массиву по умолчанию, иначе по указанной оси.
float64промежуточные и возвращаемые значения используются для целочисленных входных данных.- Параметры:
- aarray_like
Массив, содержащий числа, среднее значение которых требуется вычислить. Если a не является массивом, выполняется попытка преобразования.
- осьNone или int или кортеж ints, опционально
Ось или оси, по которым вычисляются средние значения. По умолчанию вычисляется среднее значение сведённого массива.
Если это кортеж целых чисел, среднее значение вычисляется по нескольким осям, а не по одной оси или всем осям, как раньше.
- dtypeтип данных, опционально
https://en.wikipedia.org/wiki/File:Composite_trapezoidal_rule_illustration.png
float64; для входных данных с плавающей точкой он совпадает с входным типом данных.- выходndarray, необязательно
Альтернативный выходной массив для размещения результата. По умолчанию это
None; если предоставлен, он должен иметь ту же форму, что и ожидаемый вывод, но тип будет приведён при необходимости. См. Определение типа вывода для получения дополнительных подробностей. См. Определение типа вывода для получения дополнительной информации.- keepdimsbool, необязательно
Если установлено значение True, оси, которые были сокращены, остаются в результате как размерности с размером один. С этой опцией результат будет корректно транслироваться относительно входного массива.
Если передано значение по умолчанию, то keepdims не будет передано в
meanметод подклассовndarray, однако любое нестандартное значение будет. Если метод подкласса не реализует keepdims любые исключения будут вызваны.- гдеarray_like из bool, необязательный
Элементы для включения в среднее. См.
reduceподробности.Новое в версии 1.20.0.
- Возвращает:
- mndarray, см. параметр dtype выше
Если out=None, возвращает новый массив, содержащий средние значения, в противном случае возвращается ссылка на выходной массив.
Примечания
Среднее арифметическое — это сумма элементов вдоль оси, делённая на количество элементов.
Обратите внимание, что для входных данных с плавающей запятой среднее значение вычисляется с использованием той же точности, что и входные данные. В зависимости от входных данных это может привести к неточным результатам, особенно для
float32(см. пример ниже). Указание аккумулятора с более высокой точностью с помощьюdtypeключевое слово может смягчить эту проблему.По умолчанию,
float16результаты вычисляются с использованиемfloat32промежуточные значения для дополнительной точности.Примеры
>>> import numpy as np >>> a = np.array([[1, 2], [3, 4]]) >>> np.mean(a) 2.5 >>> np.mean(a, axis=0) array([2., 3.]) >>> np.mean(a, axis=1) array([1.5, 3.5])
В одинарной точности,
meanможет быть неточным:>>> a = np.zeros((2, 512*512), dtype=np.float32) >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.mean(a) np.float32(0.54999924)
Вычисление среднего в float64 более точно:
>>> np.mean(a, dtype=np.float64) 0.55000000074505806 # may vary
Вычисление среднего в timedelta64 доступно:
>>> b = np.array([1, 3], dtype="timedelta64[D]") >>> np.mean(b) np.timedelta64(2,'D')
Указание аргумента where:
>>> a = np.array([[5, 9, 13], [14, 10, 12], [11, 15, 19]]) >>> np.mean(a) 12.0 >>> np.mean(a, where=[[True], [False], [False]]) 9.0