Обновлен ли pd.get_dummies() в новых версиях Pandas, в результате чего по умолчанию для него используются логические знаPython

Программы на Python
Anonymous
Обновлен ли pd.get_dummies() в новых версиях Pandas, в результате чего по умолчанию для него используются логические зна

Сообщение Anonymous »

Я мог бы поклясться, что df = pd.get_dummies(df, columns=categorical_cols) используется для вывода двоичных значений (0 и 1). Он даже говорит это, когда я навожу курсор на get_dummies.
Изображение

Почему мой вывод имеет логическое значение (True/False)?
Вот мой код:< /p>

Код: Выделить всё

import pandas as pd

# loading data
script_dir = os.path.dirname(__file__)
data_path = os.path.join(script_dir, "path/to/my/raw/data.csv")
df = pd.read_csv(data_path)

# Sample
feature_cols = ["list", "of", "feature", "cols"]
categorical_cols = ["list", "of", "categorical", "cols"]
target = "target_col"

X = df[feature_cols].copy()
y = df[target]

# Convert categorical columns to category type

# Apply get_dummies
X[categorical_cols] = X[categorical_cols].astype("category")
X = pd.get_dummies(X, columns=categorical_cols)
Ожидаемый результат: Фиктивные переменные должны быть в двоичной форме (0 и 1).
Фактический результат : Вывод содержит логические значения (True/False).
Предпринятые шаги:
Мне пришлось преобразуйте его в 0 и 1, добавив dtype=int.

Код: Выделить всё

`df = pd.get_dummies(df, columns=categorical_cols, dtype=int)`
Мои вопросы:
  • Почему pd.get_dummies() по умолчанию использует логические значения ( True/False) вместо
    (0/1)?
  • Обновляется в новых версиях Pandas или я
    делаю что-то не так?
  • Следует ли мне постоянно использовать dtype=int?


Подробнее здесь: https://stackoverflow.com/questions/790 ... ult-to-boo

Вернуться в «Python»