Метод rank
Метод rank применяется к DataFrame
и возвращает таблицу с рангами для каждого числового
значения. По умолчанию ранжирование происходит по
каждому столбцу отдельно, при этом одинаковым
значениям присваивается средний ранг. Метод позволяет
гибко настраивать способ вычисления рангов через
параметры method, axis и ascending.
Синтаксис
df.rank(axis=0, method='average', numeric_only=False, ascending=True, pct=False)
Пример
Базовое ранжирование столбцов с присвоением среднего ранга:
import pandas as pd
df = pd.DataFrame({
'a': [3, 1, 2, 2, 4],
'b': [5, 3, 4, 3, 2]
})
res = df.rank()
print(res)
Результат выполнения кода:
a b
0 4.0 5.0
1 1.0 2.5
2 2.5 4.0
3 2.5 2.5
4 5.0 1.0
Пример
Изменим метод вычисления ранга на минимальный:
import pandas as pd
df = pd.DataFrame({
'a': [3, 1, 2, 2, 4],
'b': [5, 3, 4, 3, 2]
})
res = df.rank(method='min')
print(res)
Результат выполнения кода:
a b
0 4.0 5.0
1 1.0 2.0
2 2.0 4.0
3 2.0 2.0
4 5.0 1.0
Пример
Ранжирование строк с помощью параметра axis:
import pandas as pd
df = pd.DataFrame({
'a': [3, 1, 2, 2, 4],
'b': [5, 3, 4, 3, 2]
})
res = df.rank(axis=1)
print(res)
Результат выполнения кода:
a b
0 1.0 2.0
1 1.0 2.0
2 1.0 2.0
3 1.0 2.0
4 2.0 1.0
Пример
Вычисление процентильных рангов с параметром pct:
import pandas as pd
df = pd.DataFrame({
'a': [10, 20, 30, 40, 50],
'b': [5, 15, 25, 35, 45]
})
res = df.rank(pct=True)
print(res)
Результат выполнения кода:
a b
0 0.2 0.2
1 0.4 0.4
2 0.6 0.6
3 0.8 0.8
4 1.0 1.0
Смотрите также
-
метод
sort_values,
который сортирует значения в таблице -
метод
quantile,
который вычисляет квантили данных -
метод
mean,
который вычисляет среднее значение -
метод
describe,
который вычисляет описательную статистику