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

Функция get_dummies

Функция get_dummies применяется к DataFrame или Series и преобразует категориальные столбцы в набор бинарных фиктивных переменных. Основным параметром является data - входные данные. Параметр columns позволяет указать конкретные столбцы для преобразования. Параметр prefix добавляет префикс к именам новых столбцов. Параметр drop_first удаляет первый уровень категории для избежания мультиколлинеарности. Параметр dtype задаёт тип данных для создаваемых столбцов (по умолчанию uint8).

Синтаксис

pd.get_dummies(data, prefix=None, prefix_sep='_', dummy_na=False, columns=None, sparse=False, drop_first=False, dtype=None)

Пример

Давайте преобразуем категориальный столбец в фиктивные переменные:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': ['x', 'y', 'x', 'z', 'y'] }) res = pd.get_dummies(df, columns=['b']) print(res)

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

a b_x b_y b_z 0 1 1 0 0 1 2 0 1 0 2 3 1 0 0 3 4 0 0 1 4 5 0 1 0

Пример

Используем параметр drop_first для удаления первой категории:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': ['x', 'y', 'x', 'z', 'y'] }) res = pd.get_dummies(df, columns=['b'], drop_first=True) print(res)

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

a b_y b_z 0 1 0 0 1 2 1 0 2 3 0 0 3 4 0 1 4 5 1 0

Пример

Применим функцию к отдельной Series без указания столбцов:

import pandas as pd ser = pd.Series(['a', 'b', 'a', 'c', 'b']) res = pd.get_dummies(ser) print(res)

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

a b c 0 1 0 0 1 0 1 0 2 1 0 0 3 0 0 1 4 0 1 0

Пример

Добавим префиксы к именам новых столбцов с помощью prefix:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3], 'b': ['x', 'y', 'z'] }) res = pd.get_dummies(df, columns=['b'], prefix='cat') print(res)

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

a cat_x cat_y cat_z 0 1 1 0 0 1 2 0 1 0 2 3 0 0 1

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

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