Pandas : Comment supprimer les caractères spéciaux de la colonne
Vous pouvez utiliser la syntaxe de base suivante pour supprimer les caractères spéciaux d’une colonne dans un DataFrame pandas :
df['my_column'] = df['my_column'].str.replace('\W', '', regex=True)
Cet exemple particulier supprimera tous les caractères de my_column qui ne sont ni des lettres ni des chiffres.
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : supprimer les caractères spéciaux de la 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({'team' : ['Mavs$', 'Nets', 'Kings!!', 'Spurs%', '&Heat&'], 'points' : [12, 15, 22, 29, 24]}) #view DataFrame print(df) team points 0 Mavs$ 12 1 Nets 15 2 Kings!! 22 3 Spurs% 29 4 &Heat& 24
Supposons que nous souhaitions supprimer tous les caractères spéciaux des valeurs de la colonne équipe .
Nous pouvons utiliser la syntaxe suivante pour ce faire :
#remove special characters from team column df['team'] = df['team'].str.replace('\W', '', regex=True) #view updated DataFrame print(df) team points 0 Mavs 12 1 Nets 15 2 Kings 22 3 Spurs 29 4 Heat 24
Notez que tous les caractères spéciaux ont été supprimés des valeurs de la colonne équipe .
Remarque : L’expression régulière \W est utilisée pour rechercher tous les caractères autres que des mots, c’est-à-dire les caractères qui ne sont ni alphabétiques ni numériques.
Dans cet exemple, nous avons remplacé chaque caractère autre qu’un mot par une valeur vide, ce qui équivaut à supprimer les caractères autres qu’un mot.
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