Zacznij terazZacznij za darmo

Kodowanie zmiennych kategorycznych

Twój kolega przekształcił kolumny w zbiorze danych o kredytach na wartości numeryczne za pomocą LabelEncoder(). Pominął jedną: credit_history, która zawiera historię kredytową wnioskodawcy. Chcesz stworzyć dwie wersje zbioru danych – jedną z użyciem LabelEncoder(), a drugą z kodowaniem one-hot – w celu porównania. Macierz cech jest dostępna jako credit. Masz załadowany LabelEncoder() oraz bibliotekę pandas jako pd.

To ćwiczenie jest częścią kursu

Projektowanie przepływów pracy uczenia maszynowego w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zakoduj credit_history za pomocą LabelEncoder().
  • Połącz wynik z oryginalną ramką danych.
  • Utwórz nową ramkę danych, łącząc kolumny kodowania one-hot z oryginalną ramką.
  • Sprawdź, czy kodowanie one-hot daje więcej kolumn niż kodowanie etykietowe.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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[____])
Edytuj i uruchom kod