РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
599 of 687 menu

Метод median

Метод median аксессора rolling применяется к скользящему окну и вычисляет медиану значений внутри этого окна. Медиана - это значение, которое находится в середине отсортированного набора данных. В отличие от среднего арифметического, медиана более устойчива к выбросам.

Метод не принимает никаких параметров, кроме стандартных для агрегации (например, skipna для пропуска пропущенных значений). Результатом является Series или DataFrame той же длины, что и исходный объект, где для первых элементов (когда окно ещё не заполнено) будут стоять пропущенные значения NaN.

Синтаксис

df.rolling(window).median()

Пример

Давайте создадим простой DataFrame и вычислим скользящую медиану с окном размером в 3 элемента:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': [10, 20, 30, 40, 50] }) res = df.rolling(window=3).median() print(res)

Результат выполнения кода:

a b 0 NaN NaN 1 NaN NaN 2 2.0 20.0 3 3.0 30.0 4 4.0 40.0

Первые два элемента содержат NaN, потому что для их вычисления не хватает данных для заполнения окна. Для третьего элемента окно включает значения [1, 2, 3], медиана которых равна 2.

Пример

Скользящую медиану можно вычислить и для Series. Рассмотрим пример с окном размером 2:

import pandas as pd ser = pd.Series([1, 3, 2, 4, 5]) res = ser.rolling(window=2).median() print(res)

Результат выполнения кода:

0 NaN 1 2.0 2 2.5 3 3.0 4 4.5 dtype: float64

Для каждого элемента вычисляется медиана двух предыдущих значений включая текущее. При чётном размере окна медиана - это среднее арифметическое двух центральных значений.

Пример

Метод median можно комбинировать с другими параметрами аксессора rolling, например, с центрированием окна:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': [10, 20, 30, 40, 50] }) res = df.rolling(window=3, center=True).median() print(res)

Результат выполнения кода:

a b 0 NaN NaN 1 2.0 20.0 2 3.0 30.0 3 4.0 40.0 4 NaN NaN

При центрировании окна медиана вычисляется для центрального элемента окна. Крайние элементы не могут быть вычислены, так как для них окно выходит за границы данных.

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

  • метод mean,
    который вычисляет скользящее среднее
  • метод max,
    который вычисляет максимум в скользящем окне
  • метод count,
    который подсчитывает количество элементов в окне
  • метод quantile,
    который вычисляет квантиль в скользящем окне
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить