Trasformazioni di training e test (I)
Finora hai creato degli scaler basati su una colonna e poi hai applicato lo stesso scaler ai dati su cui era stato addestrato. Quando crei modelli di Machine Learning, in genere li costruisci su dati storici (train set) e applichi il modello a nuovi dati mai visti (test set). In questi casi è fondamentale assicurarti che la stessa scalatura venga applicata sia ai dati di training sia a quelli di test.
Per farlo nella pratica, alleni lo scaler sul train set e conservi lo scaler addestrato per applicarlo al test set. Non dovresti mai riaddestrare uno scaler sul test set.
Per questo esercizio e il prossimo, abbiamo suddiviso il DataFrame so_numeric_df in un insieme di training (so_train_numeric) e uno di test (so_test_numeric).
Questo esercizio fa parte del corso
Feature Engineering per il Machine Learning in Python
Istruzioni dell'esercizio
- Istanzia
StandardScaler()comeSS_scaler. - Esegui il fit di
StandardScalersulla colonnaAge. - Trasforma la colonna
Agenel set di test (so_test_numeric).
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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())