CommencerCommencer gratuitement

Encoder des colonnes catégorielles III : DictVectorizer

Très bien, une dernière astuce avant de passer aux pipelines. Le processus en deux étapes que vous venez de suivre — LabelEncoder puis OneHotEncoder — peut être simplifié en utilisant un DictVectorizer.

L’utilisation d’un DictVectorizer sur un DataFrame converti en dictionnaire permet d’obtenir à la fois un encodage d’étiquettes et un one-hot encoding en une seule opération.

Votre tâche est de mettre en pratique cette stratégie dans cet exercice !

Cet exercice fait partie du cours

Extreme Gradient Boosting avec XGBoost

Afficher le cours

Instructions

  • Importez DictVectorizer depuis sklearn.feature_extraction.
  • Convertissez df en un dictionnaire nommé df_dict à l’aide de sa méthode .to_dict() avec "records" comme argument.
  • Instanciez un objet DictVectorizer appelé dv avec l’argument nommé sparse=False.
  • Appliquez le DictVectorizer sur df_dict en utilisant sa méthode .fit_transform().
  • Cliquez sur "Soumettre la réponse" pour afficher les cinq premières lignes du résultat ainsi que le vocabulaire.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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_)
Modifier et exécuter le code