Encodage avec map() pour un mapping manuel
L’encodage avec map() permet de réaliser un mappage personnalisé entre les valeurs d’une colonne et un ensemble de valeurs spécifiques. Contrairement à des méthodes automatiques comme LabelEncoder, map() offre la possibilité de définir explicitement comment chaque valeur catégorielle doit être transformée. Cette technique est particulièrement utile lorsque l’on souhaite un contrôle total sur l’encodage, par exemple, lorsqu’on veut associer des étiquettes personnalisées ou convertir des valeurs en fonction de règles spécifiques. Le mappage se fait à l’aide d’un dictionnaire ou d’une fonction appliquée aux valeurs de la colonne.
Fonctions :
-
map({'val1': 0, 'val2': 1})
La méthode map() permet de transformer les valeurs d'une colonne selon un dictionnaire de correspondances. Elle est particulièrement utile lorsqu'on souhaite effectuer un encodage personnalisé, par exemple pour convertir des valeurs catégorielles spécifiques en valeurs numériques ou dans un autre format. Cela peut être utilisé pour un petit ensemble de catégories ou lorsque l'on souhaite un contrôle total sur l'encodage.
Importation :
import pandas as pd
Attributs :
Paramètre Type Description Valeur par défaut map()
method Applique un mapping sur une série, transformant chaque élément selon le dictionnaire spécifié. N/A Exemple de code :
import pandas as pd # Exemple de DataFrame data = { 'produit': ['A', 'B', 'C', 'B', 'A', 'C'], 'prix': [10, 20, 30, 20, 10, 30] } df = pd.DataFrame(data) # Mapping manuel des produits df['produit_encoded'] = df['produit'].map({'A': 0, 'B': 1, 'C': 2}) print(df)
Explication du code :
- DataFrame : Le DataFrame contient une colonne
'produit'
avec des valeurs catégorielles ('A', 'B', 'C'). map()
: La méthodemap()
est utilisée pour remplacer chaque valeur dans la colonne'produit'
par la valeur correspondante dans le dictionnaire{'A': 0, 'B': 1, 'C': 2}
.'A'
devient 0'B'
devient 1'C'
devient 2
Remarques :
- Mapping sur des colonnes numériques : Bien que souvent utilisé pour les données catégorielles,
map()
peut également être utilisé pour appliquer des fonctions de transformation personnalisées à des colonnes numériques.
- DataFrame : Le DataFrame contient une colonne