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
Instructions de l’exercice
- Importez
DictVectorizerdepuissklearn.feature_extraction. - Convertissez
dfen un dictionnaire appelédf_dictà l'aide de sa méthode.to_dict()avec"records"comme argument. - Instanciez un objet
DictVectorizernommédvavec l'argument nommésparse=False. - Appliquez le
DictVectorizersurdf_dicten 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_)