ПочатиПочніть безкоштовно

Кодування категоріальних ознак

Ваш колега перетворив стовпці в наборі даних кредитів на числові значення за допомогою LabelEncoder(). Один він пропустив: credit_history, де зберігається кредитна історія заявника. Ви хочете створити дві версії набору даних. Одна використовуватиме LabelEncoder(), а інша — one-hot кодування, щоб порівняти результати. Матриця ознак доступна як credit. LabelEncoder() уже імпортовано, а pandas — як pd.

Ця вправа є частиною курсу

Проєктування робочих процесів машинного навчання в Python

Переглянути курс

Інструкції до вправи

  • Закодуйте credit_history за допомогою LabelEncoder().
  • Додайте отриманий результат до початкового датафрейму.
  • Створіть новий датафрейм, додавши one-hot «даммі»-стовпці до початкового фрейму.
  • Підтвердьте, що one-hot кодування дає більше стовпців, ніж кодування мітками.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create numeric encoding for credit_history
credit_history_num = ____.____(
  credit[____])

# Create a new feature matrix including the numeric encoding
X_num = pd.concat([X, pd.Series(____)], ____)

# Create new feature matrix with dummies for credit_history
X_hot = pd.concat(
  [X, ____.____(credit[____])], ____)

# Compare the number of features of the resulting DataFrames
print(X_hot.shape[____] > X_num.shape[____])
Редагувати та запускати код