CommencezCommencez gratuitement

Encodage des colonnes catégorielles III : DictVectorizer

Très bien, un dernier truc avant d'aborder les pipelines. Le processus en deux étapes que vous venez d'effectuer — LabelEncoder suivi de OneHotEncoder — peut être simplifié en utilisant un DictVectorizer.

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

Votre tâche consiste à mettre en pratique cette approche dans cet exercice !

Cette activité fait partie du cours

Amorçage de gradient avancé avec XGBoost

Voir le cours

Instructions de l’exercice

  • Importez DictVectorizer depuis sklearn.feature_extraction.
  • Convertissez df en un dictionnaire appelé df_dict à l'aide de sa méthode .to_dict() avec "records" comme argument.
  • Instanciez un objet DictVectorizer nommé 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 obtenues et le vocabulaire.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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