Codifica di colonne categoriche III: DictVectorizer
Bene, un ultimo trucco prima di tuffarti nelle pipeline. Il processo in due passaggi che hai appena visto - LabelEncoder seguito da OneHotEncoder - può essere semplificato usando un DictVectorizer.
Usare un DictVectorizer su un DataFrame convertito in dizionario ti permette di ottenere sia la label encoding sia la one-hot encoding in un colpo solo.
Il tuo compito è mettere in pratica questa strategia in questo esercizio!
Questo esercizio fa parte del corso
Extreme Gradient Boosting con XGBoost
Istruzioni dell'esercizio
- Importa
DictVectorizerdasklearn.feature_extraction. - Converte
dfin un dizionario chiamatodf_dictusando il suo metodo.to_dict()con"records"come argomento. - Istanzia un oggetto
DictVectorizerchiamatodvcon l'argomentosparse=False. - Applica il
DictVectorizeradf_dictusando il suo metodo.fit_transform(). - Premi "Invia risposta" per stampare le prime cinque righe risultanti e il vocabolario.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Import DictVectorizer
____
# Convert df into a dictionary: df_dict
df_dict = ____
# Create the DictVectorizer object: dv
dv = ____
# Apply dv on df: df_encoded
df_encoded = ____
# Print the resulting first five rows
print(df_encoded[:5,:])
# Print the vocabulary
print(dv.vocabulary_)