Интервалы значений в Pandas
Чтобы сгруппировать числа
по диапазонам, служит функция
cut. Она режет шкалу
на интервалы одинаковой ширины
и каждому значению назначает
свой отрезок.
Возьмём ряд баллов и разрежем
его на четыре интервала
функцией cut:
import pandas as pd
scores = pd.Series([10, 20, 30, 40, 50, 60, 70, 80])
bins = pd.cut(scores, bins=4)
print(bins) # выведет 0 (9.93, 27.5]
# 1 (9.93, 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.93, 27.5] < (27.5, 45.0] < (45.0, 62.5] <
# (62.5, 80.0]]
Границы подбираются по минимуму и максимуму ряда, поэтому ширина каждого куска на шкале одинакова. Подпись интервала показывает левую и правую границу в скобках.
Создайте ряд возрастов
18, 25, 33,
41, 52, 60
и разбейте его на три интервала
равной ширины. Выведите результат.
Соберите ряд весов в килограммах
55, 62, 68,
74, 81 и получите
категории из пяти равных
отрезков шкалы.
Из ряда расстояний до офиса в километрах разрежьте значения на четыре интервала одинаковой ширины и покажите метки интервалов.