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éthode map() 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.