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

Метод rank аксессора rolling

Метод rank аксессора rolling применяется к Series или DataFrame и вычисляет ранги значений в каждом скользящем окне. Первым параметром можно передать метод ранжирования (по умолчанию average). Второй параметр определяет, следует ли ранжировать по возрастанию (по умолчанию True). Метод возвращает объект того же типа, что и исходный, с вычисленными рангами.

Синтаксис

df.rolling(window).rank([method, ascending])

Пример

Давайте вычислим ранги в скользящем окне размером 3 для колонки 'a':

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

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

0 NaN 1 NaN 2 2.0 3 2.0 4 2.0 dtype: float64

Пример

Теперь применим метод rank с параметром min, который присваивает минимальный ранг для одинаковых значений:

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

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

0 NaN 1 NaN 2 1.0 3 1.0 4 2.0 dtype: float64

Пример

Давайте вычислим ранги по убыванию в скользящем окне размером 4 с методом max:

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

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

0 NaN 1 NaN 2 NaN 3 4.0 4 4.0 dtype: float64

Пример

Применим метод rank ко всем колонкам DataFrame с окном 3 и методом dense:

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

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

a b 0 NaN NaN 1 NaN NaN 2 2.0 2.0 3 2.0 2.0 4 2.0 2.0

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

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