Zacznij terazZacznij za darmo

Transformacje na zbiorze treningowym i testowym (I)

Do tej pory tworzyłeś skalery na podstawie kolumny, a następnie stosowałeś je do tych samych danych, na których były trenowane. W przypadku budowania modeli uczenia maszynowego zazwyczaj trenuje się je na danych historycznych (zbiorze treningowym), a następnie stosuje do nowych, niewidzianych danych (zbiorze testowym). W takich sytuacjach należy zadbać o to, aby to samo skalowanie było stosowane zarówno do danych treningowych, jak i testowych.
W praktyce oznacza to, że skaler dopasowujesz na zbiorze treningowym, a następnie używasz go do transformacji zbioru testowego. Nigdy nie dopasowuj skalera ponownie na zbiorze testowym.

W tym ćwiczeniu i następnym ramka danych so_numeric_df jest podzielona na zbiór treningowy (so_train_numeric) i testowy (so_test_numeric).

To ćwiczenie jest częścią kursu

Inżynieria cech w uczeniu maszynowym w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz instancję StandardScaler() i przypisz ją do zmiennej SS_scaler.
  • Dopasuj StandardScaler na kolumnie Age.
  • Zastosuj transformację na kolumnie Age w zbiorze testowym (so_test_numeric).

Interaktywne ćwiczenie praktyczne

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

# Import StandardScaler
from sklearn.preprocessing import StandardScaler

# Apply a standard scaler to the data
SS_scaler = ____

# Fit the standard scaler to the data
____

# Transform the test data using the fitted scaler
so_test_numeric['Age_ss'] = ____
print(so_test_numeric[['Age', 'Age_ss']].head())
Edytuj i uruchom kod