Квантильные интервалы в Pandas
Функция qcut тоже возвращает
категории-интервалы, но границы
подбирает иначе: в каждом куске
оказывается примерно поровну
чисел, а не одинаковая ширина
на оси значений.
Возьмём тот же ряд баллов и разделим его на четыре квантильных группы:
import pandas as pd
scores = pd.Series([10, 20, 30, 40, 50, 60, 70, 80])
quants = pd.qcut(scores, q=4)
print(quants) # выведет 0 (9.999, 27.5]
# 1 (9.999, 27.5]
# 2 (27.5, 45.0]
# 3 (27.5, 45.0]
# 4 (45.0, 62.5]
# 5 (45.0, 62.5]
# 6 (62.5, 80.0]
# 7 (62.5, 80.0]
# dtype: category
# Categories (4, interval[float64, right]): [(9.999, 27.5] < (27.5, 45.0] < (45.0, 62.5] <
# (62.5, 80.0]]
При восьми значениях и четырёх группах в каждой оказывается по две строки, хотя числовые отрезки могут отличаться по длине на оси значений.
Создайте ряд зарплат
40, 45, 50,
55, 60, 65,
70, 75 и разбейте
его на четыре квантильные
группы. Выведите результат.
Соберите ряд оценок за экзамен из восьми чисел и получите три квантильных интервала с примерно равным числом наблюдений в каждом.
Из ряда времени ответа службы в секундах разделите значения на пять квантильных корзин и покажите метки интервалов.