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. В противном случае тип данных вывода совпадает с типом данных ввода. Если выход указан, возвращается этот массив.
Смотрите также
Примечания
Для заданного вектора
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)