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

Порядкове кодування категоріального стовпця

Імпутація категоріальних значень потребує кількох додаткових кроків порівняно з числовими. Спершу потрібно перетворити їх на числові, адже статистичні операції не виконуються над рядками.

Ви працюватимете з набором даних профілів користувачів, де ресторан записував вподобання та вибір клієнтів. Він містить лише категоріальні ознаки. У цій вправі ви перетворите категоріальний стовпець 'ambience' на числовий за допомогою OrdinalEncoder зі sklearn. Датафрейм завантажено як users. Функцію OrdinalEncoder() також імпортовано.

Для вас виведено head() і tail() датафрейму users.

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

Робота з пропущеними даними в Python

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

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

  • Створіть об'єкт порядкового кодувальника та присвойте його до ambience_ord_enc.
  • Виберіть непропущені значення стовпця 'ambience' у users.
  • Змініть форму ambience_not_null до (-1, 1).
  • Замініть непропущені значення ambience на його закодовані значення.

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

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

# Set col_name to 'ambience'
col_name = 'ambience'
# Create Ordinal encoder
ambience_ord_enc = ___

# Select non-null values of ambience column in users
ambience = users[col_name]
ambience_not_null = ___

# Reshape ambience_not_null to shape (-1, 1)
reshaped_vals = ___

# Select the non-null values for the column col_name in users and store the encoded values
encoded_vals = ambience_ord_enc.fit_transform(reshaped_vals)
users.loc[___, col_name] = np.squeeze(encoded_vals)
Редагувати та запускати код