Pandas : comment remplacer plusieurs valeurs dans une colonne
Vous pouvez utiliser la syntaxe de base suivante pour remplacer plusieurs valeurs dans une colonne d’un DataFrame pandas :
df = df.replace({'my_column' : {'old1' : 'new1', 'old2' : 'new2', 'old3' : 'new3'}})
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : remplacer plusieurs valeurs dans une colonne dans Pandas
Supposons que nous ayons le DataFrame pandas suivant qui contient des informations sur divers joueurs de basket-ball :
import pandas as pd #create DataFrame df = pd.DataFrame({'position': ['G', 'G', 'F', 'F', 'F', 'C', 'C'], 'points': [28, 17, 19, 14, 23, 26, 5], 'rebounds': [5, 6, 4, 7, 14, 12, 9], 'assists': [10, 13, 7, 8, 4, 5, 8]}) #view DataFrame print(df) position points rebounds assists 0 G 28 5 10 1 G 17 6 13 2 F 19 4 7 3 F 14 7 8 4 F 23 14 4 5 C 26 12 5 6 C 5 9 8
Supposons que nous souhaitions effectuer les remplacements suivants dans la colonne position :
- Remplacez « G » par « Garde »
- Remplacez « F » par « Forward »
- Remplacez C par « Centre »
Nous pouvons utiliser la syntaxe suivante pour ce faire :
#replace multiple values in position column df = df.replace({'position' : {'G' : 'Guard', 'F' : 'Forward', 'C' : 'Center'}}) #view updated DataFrame print(df) position points rebounds assists 0 Guard 28 5 10 1 Guard 17 6 13 2 Forward 19 4 7 3 Forward 14 7 8 4 Forward 23 14 4 5 Center 26 12 5 6 Center 5 9 8
Notez que plusieurs valeurs ont été remplacées dans la colonne position .
Nous pouvons utiliser une syntaxe similaire pour remplacer plusieurs valeurs dans une colonne numérique.
Par exemple, le code suivant montre comment effectuer les remplacements suivants dans la colonne des assistances :
- Remplacer 10 par 20
- Remplacer 13 par 15
- Remplacer 8 par 10
Nous pouvons utiliser la syntaxe suivante pour ce faire :
#replace multiple values in assists column df = df.replace({'assists' : {10:20, 13:15, 8:10}}) #view updated DataFrame print(df) position points rebounds assists 0 G 28 5 20 1 G 17 6 15 2 F 19 4 7 3 F 14 7 10 4 F 23 14 4 5 C 26 12 5 6 C 5 9 10
Notez que plusieurs valeurs ont été remplacées dans la colonne des assistances .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :
Comment remplacer les valeurs NaN par des zéros dans Pandas
Comment remplacer les chaînes vides par NaN dans Pandas
Comment remplacer les valeurs dans la colonne en fonction de la condition dans Pandas