numpy.median#

numpy.медиана(a, ось=None, выход=None, overwrite_input=False, keepdims=False)[источник]#

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

Возвращает медиану элементов массива.

Параметры:
aarray_like

Входной массив или объект, который может быть преобразован в массив.

ось{int, sequence of int, None}, optional

Ось или оси, по которым вычисляются медианы. По умолчанию axis=None вычисляет медиану по сглаженной версии массива. Если задана последовательность осей, массив сначала сглаживается по заданным осям, затем медиана вычисляется по полученной сглаженной оси.

выходndarray, необязательно

Альтернативный выходной массив для размещения результата. Он должен иметь ту же форму и длину буфера, что и ожидаемый вывод, но тип (вывода) будет приведён при необходимости.

overwrite_inputbool, необязательно

Если True, то разрешить использование памяти входного массива a для вычислений. Входной массив будет изменён вызовом median. Это сэкономит память, когда вам не нужно сохранять содержимое входного массива. Рассматривайте вход как неопределённый, но он, вероятно, будет полностью или частично отсортирован. По умолчанию False. Если overwrite_input является True и a ещё не является ndarray, будет вызвана ошибка.

keepdimsbool, необязательно

Если установлено значение True, оси, которые были сокращены, остаются в результате как измерения с размером один. С этой опцией результат будет корректно транслироваться против исходного arr.

Возвращает:
медианаndarray

Новый массив, содержащий результат. Если вход содержит целые числа или числа с плавающей точкой меньше, чем float64, тогда тип выходных данных будет np.float64. В противном случае тип данных вывода совпадает с типом данных ввода. Если выход указан, возвращается этот массив.

Смотрите также

mean, percentile

Примечания

Для заданного вектора V длины N, медиана V является средним значением отсортированной копии V, V_sorted - т.е., V_sorted[(N-1)/2], когда N нечётное, и среднее двух средних значений V_sorted когда N является чётным.

Примеры

>>> import numpy as np
>>> a = np.array([[10, 7, 4], [3, 2, 1]])
>>> a
array([[10,  7,  4],
       [ 3,  2,  1]])
>>> np.median(a)
np.float64(3.5)
>>> np.median(a, axis=0)
array([6.5, 4.5, 2.5])
>>> np.median(a, axis=1)
array([7.,  2.])
>>> np.median(a, axis=(0, 1))
np.float64(3.5)
>>> m = np.median(a, axis=0)
>>> out = np.zeros_like(m)
>>> np.median(a, axis=0, out=m)
array([6.5,  4.5,  2.5])
>>> m
array([6.5,  4.5,  2.5])
>>> b = a.copy()
>>> np.median(b, axis=1, overwrite_input=True)
array([7.,  2.])
>>> assert not np.all(a==b)
>>> b = a.copy()
>>> np.median(b, axis=None, overwrite_input=True)
np.float64(3.5)
>>> assert not np.all(a==b)