Skip to content

Comment Utiliser Efficacement la Fonction Get Dummies de Pandas

Updated on

La bibliothèque Pandas de Python dispose de nombreuses fonctions robustes et polyvalentes pour la manipulation des données, et la fonction get_dummies en fait partie. Ce tutoriel vise à vous aider à comprendre et à utiliser efficacement cette fonction dans vos tâches de prétraitement des données.

Vous voulez créer rapidement des visualisations de données en Python ?

PyGWalker est un projet Python open source qui peut aider à accélérer l'analyse et la visualisation des données directement dans un environnement Jupyter Notebook.

PyGWalker (opens in a new tab) transforme votre dataframe Pandas (ou dataframe Polars) en une interface utilisateur visuelle où vous pouvez faire glisser et déposer des variables pour créer des graphiques facilement. Utilisez simplement le code suivant :

pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)

Vous pouvez exécuter PyGWalker dès maintenant avec ces notebooks en ligne :

Et n'oubliez pas de nous donner une ⭐️ sur GitHub !

Exécuter PyGWalker dans un notebook Kaggle (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)Donnez une ⭐️ à PyGWalker sur GitHub (opens in a new tab)
Exécuter PyGWalker dans un notebook Kaggle (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)

Comprendre la Fonction Get Dummies de Pandas

La fonction get_dummies de Pandas est un outil puissant lorsqu'il s'agit de manipuler des données catégorielles. Elle convertit des variable(s) catégorielle(s) en variables indicatrices/dummies, créant de nouvelles colonnes pour chaque catégorie unique dans une variable catégorielle, avec des uns (1) et des zéros (0) indiquant la présence ou l'absence de la catégorie dans la ligne d'origine.

Pourquoi cela est-il important ? Les algorithmes d'apprentissage automatique fonctionnent généralement avec des données numériques. Par conséquent, les données catégorielles doivent souvent être transformées en format numérique, c'est là que get_dummies intervient.

import pandas as pd
 
# Données d'exemple
data = pd.DataFrame({'animaux': ['chat', 'chien', 'oiseau', 'chat']})
 
# Application de get_dummies
dummies_data = pd.get_dummies(data)
 
print(dummies_data)

Cela affichera :

   animaux_chat  animaux_chien  animaux_oiseau
0              1              0               0
1              0              1               0
2              0              0               1
3              1              0               0

Anatomie de la Fonction Get Dummies

La fonction get_dummies possède plusieurs paramètres pour permettre un contrôle précis de son fonctionnement. Voici un bref aperçu de ces paramètres :

  • data : Le DataFrame ou la Series d'entrée à partir duquel générer les variables indicatrices.
  • prefix : Préfixe facultatif de chaîne de caractères pour les noms de colonnes des variables indicatrices.
  • prefix_sep : Séparateur facultatif de chaîne de caractères à utiliser entre le préfixe et le nom de la colonne. La valeur par défaut est "_".
  • dummy_na : Booléen pour ajouter une colonne indiquant les NaNs, si false les NaNs sont ignorés. La valeur par défaut est False.
  • columns : Liste facultative de noms de colonnes à convertir en variables indicatrices. Si non spécifié, il convertit toutes les colonnes de type object et catégorie.
  • sparse : Booléen pour renvoyer un SparseDataFrame si True, sinon renvoyer un DataFrame standard. La valeur par défaut est False.
  • drop_first : Booléen pour obtenir k-1 variables indicatrices sur k niveaux catégoriels en supprimant le premier niveau. Cela évite la multicolinéarité. La valeur par défaut est False.

Exemples Pratiques de la Fonction Get Dummies de Pandas

Plongeons dans des exemples plus pratiques de l'utilisation de la fonction get_dummies.

1. Utiliser le paramètre prefix

Vous pouvez utiliser le paramètre prefix pour ajouter un préfixe spécifique aux nouveaux noms de colonnes des variables indicatrices. Cela peut être utile pour identifier ultérieurement la source de ces colonnes.

# Appliquer get_dummies avec un préfixe
dummies_data_prefix = pd.get_dummies(data, prefix='animaux')
 
print(dummies_data_prefix)

2. Gérer les valeurs NaN

Lorsque vous travaillez avec des données réelles, vous rencontrerez souvent des valeurs manquantes. En utilisant le paramètre dummy_na, vous pouvez créer une colonne indicatrice distincte pour les valeurs NaN.

# Exemple de données avec NaN
data = pd.DataFrame({'animaux': ['chat', 'chien', 'oiseau', None]})
 
# Appliquer get_dummies avec dummy_na
dummies_data_nan = pd.get_dummies(data, dummy_na=True)
 
print(dummies_data_nan)

3. Travailler avec plusieurs colonnes

La fonction get_dummies peut être appliquée à plusieurs colonnes en une seule fois. Dans l'exemple ci-dessous, nous créons des variables indicatrices pour deux colonnes catégorielles - 'animaux' et 'couleur'.

# Exemple de données avec plusieurs colonnes
data = pd.DataFrame({'animaux': ['chat', 'chien', 'oiseau', 'chat'], 'couleur': ['noir', 'blanc', 'noir', 'blanc']})
 
# Appliquer get_dummies à plusieurs colonnes
dummies_data_multi = pd.get_dummies(data, columns=['animaux', 'couleur'])
 
print(dummies_data_multi)

Conclusion

En conclusion, maîtriser la fonction pd.get_dummies() peut améliorer vos capacités de prétraitement des données pour les projets d'apprentissage automatique. C'est un outil indispensable pour gérer les données catégoriques et s'assurer qu'elles sont dans le bon format pour vos algorithmes.