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

Функция cut

Функция cut применяется к числовым данным и разбивает их на интервалы (бины). Она полезна для преобразования непрерывных переменных в дискретные категории. Основные параметры: первым аргументом передаётся массив данных, вторым - количество интервалов или границы интервалов. Можно также задать метки для интервалов и указать, включать ли правую границу интервала.

Синтаксис

pd.cut(x, bins, labels=None, right=True, ...)

Пример

Разобьём числовые данные на 3 интервала:

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

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

0 (0.995, 2.333] 1 (0.995, 2.333] 2 (2.333, 3.667] 3 (3.667, 5.0] 4 (3.667, 5.0] dtype: category

Пример

Зададим конкретные границы интервалов:

import pandas as pd ser = pd.Series([1, 2, 3, 4, 5]) res = pd.cut(ser, bins=[0, 2, 4, 6]) print(res)

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

0 (0, 2] 1 (0, 2] 2 (2, 4] 3 (2, 4] 4 (4, 6] dtype: category

Пример

Добавим понятные метки для интервалов:

import pandas as pd ser = pd.Series([1, 2, 3, 4, 5]) res = pd.cut( ser, bins=[0, 2, 4, 6], labels=['low', 'middle', 'high'] ) print(res)

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

0 low 1 low 2 middle 3 middle 4 high dtype: category

Пример

Изменим способ включения границ интервала (левая граница включается, правая нет):

import pandas as pd ser = pd.Series([1, 2, 3, 4, 5]) res = pd.cut( ser, bins=[0, 2, 4, 6], right=False ) print(res)

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

0 [0, 2) 1 [2, 4) 2 [2, 4) 3 [4, 6) 4 [4, 6) dtype: category

Пример

Применим функцию к столбцу таблицы:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': [10, 20, 30, 40, 50] }) df['a_group'] = pd.cut( df['a'], bins=[0, 2, 4, 6], labels=['low', 'middle', 'high'] ) print(df)

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

a b a_group 0 1 10 low 1 2 20 low 2 3 30 middle 3 4 40 middle 4 5 50 high

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

  • функция qcut,
    которая разбивает данные по квантилям
  • функция crosstab,
    которая строит таблицу частот по категориям
  • функция pivot_table,
    которая строит сводные таблицы с агрегацией
  • функция get_dummies,
    которая преобразует категории в бинарные столбцы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить