Zacznij terazZacznij za darmo

Kodowanie porządkowe kolumny kategorycznej

Imputacja wartości kategorycznych wymaga kilku dodatkowych kroków w porównaniu z imputacją wartości liczbowych. Najpierw trzeba je przekonwertować na wartości numeryczne, ponieważ na łańcuchach znakowych nie można wykonywać operacji statystycznych.

Skorzystasz ze zbioru danych profilów użytkowników, który zawiera preferencje i wybory klientów restauracji. Zbiór zawiera wyłącznie cechy kategoryczne. W tym ćwiczeniu przekonwertujesz kolumnę kategoryczną 'ambience' na kolumnę numeryczną, używając OrdinalEncoder z biblioteki sklearn. Ramka danych została załadowana jako users. Funkcja OrdinalEncoder() jest również dostępna.

Wyniki head() i tail() ramki danych users zostały wyświetlone.

To ćwiczenie jest częścią kursu

Braki danych w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz obiekt kodera porządkowego i przypisz go do zmiennej ambience_ord_enc.
  • Wybierz wartości bez braków z kolumny 'ambience' w ramce users.
  • Zmień kształt zmiennej ambience_not_null na (-1, 1).
  • Zastąp wartości bez braków w kolumnie ambience ich zakodowanymi odpowiednikami.

Interaktywne ćwiczenie praktyczne

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

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