Spec-Zone.ru › pandas 2

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

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

default_category:None, Hashable или словарь Hashable, по умолчанию 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/2.2.2/reference/api/pandas.from_dummies.html

Spec-Zone.ru

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