Spec-Zone.ru › pandas 1

pandas.from_dummies

pandas.from_dummies(data, sep=None, default_category=None)[source]

Создать категориальную DataFrame из DataFrame фиктивных переменных.

Инвертирует операцию, выполненную get_dummies().

Новая в версии 1.5.0.

Параметры
data:DataFrame

Данные, содержащие кодированные переменные в виде целочисленных столбцов 1 и 0.

sep:str, по умолчанию None

Разделитель, используемый в именах столбцов категорий фиктивных переменных. Символ, указывающий разделение имён категорий от префиксов. Например, если ваши имена столбцов «префикс_А» и «префикс_Б», вы можете удалить символ нижнего подчеркивания, указав sep=«_».

default_category:None, Hashable или dict из Hashables, по умолчанию None

По умолчанию категория — это неявная категория, когда значению не соответствует ни одна из перечисленных категорий, заданных единицей, т. е. если все фиктивные переменные в строке равны нулю. Может быть одним значением для всех переменных или словарем, напрямую сопоставляющим значения по умолчанию категориям к префиксу переменной.

Возвращает
DataFrame

Категориальные данные, декодированные из входных данных в виде фиктивных переменных.

Возможные исключения
ValueError
  • Когда входные DataFrame data содержат значения NA.

  • Когда входные DataFrame data содержат имена столбцов с разделителями, которые не соответствуют разделителю, заданному в sep.

  • Когда dict переданное в default_category не содержит неявную категорию для каждого префикса.

  • Когда значение в data имеет более одной назначенной категории.

  • Когда default_category=None и значение в data не имеют назначенной категории.

TypeError
  • Когда входные data не являются DataFrame типа.

  • Когда входные DataFrame data содержат данные, не являющиеся фиктивными.

  • Когда переданный sep имеет неправильный тип данных.

  • Когда переданный default_category имеет неправильный тип данных.

См. также

get_dummies()

Преобразование Series или DataFrame в кодировку фиктивных переменных.

Categorical

Представление категориальной переменной в классическом виде.

Примечания

Столбцы переданных данных фиктивных переменных должны содержать только 1 и 0, или булевые значения.

Примеры

>>> df = pd.DataFrame({"a": [1, 0, 0, 1], "b": [0, 1, 0, 0],
...                    "c": [0, 0, 1, 0]})
>>> df
   a  b  c
0  1  0  0
1  0  1  0
2  0  0  1
3  1  0  0
>>> pd.from_dummies(df)
0     a
1     b
2     c
3     a
>>> df = pd.DataFrame({"col1_a": [1, 0, 1], "col1_b": [0, 1, 0],
...                    "col2_a": [0, 1, 0], "col2_b": [1, 0, 0],
...                    "col2_c": [0, 0, 1]})
>>> df
      col1_a  col1_b  col2_a  col2_b  col2_c
0       1       0       0       1       0
1       0       1       1       0       0
2       1       0       0       0       1
>>> pd.from_dummies(df, sep="_")
    col1    col2
0    a       b
1    b       a
2    a       c
>>> df = pd.DataFrame({"col1_a": [1, 0, 0], "col1_b": [0, 1, 0],
...                    "col2_a": [0, 1, 0], "col2_b": [1, 0, 0],
...                    "col2_c": [0, 0, 0]})
>>> df
      col1_a  col1_b  col2_a  col2_b  col2_c
0       1       0       0       1       0
1       0       1       1       0       0
2       0       0       0       0       0
>>> pd.from_dummies(df, sep="_", default_category={"col1": "d", "col2": "e"})
    col1    col2
0    a       b
1    b       a
2    d       e

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.5.0/reference/api/pandas.from_dummies.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API