IniziaInizia gratis

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

Visualizza il corso

Istruzioni dell'esercizio

  • Importa DictVectorizer da sklearn.feature_extraction.
  • Converte df in un dizionario chiamato df_dict usando il suo metodo .to_dict() con "records" come argomento.
  • Istanzia un oggetto DictVectorizer chiamato dv con l'argomento sparse=False.
  • Applica il DictVectorizer a df_dict usando 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_)
Modifica ed esegui il codice