Maison >développement back-end >Tutoriel Python >Comment puis-je résoudre UnicodeDecodeError lors de la lecture de fichiers CSV dans Pandas ?
UnicodeDecodeError : résolution des problèmes d'encodage lors de la lecture de fichiers CSV dans Pandas
Introduction
Travailler avec Les fichiers CSV présentent souvent des problèmes d'encodage, en particulier lorsqu'ils rencontrent des caractères non pris en charge par l'encodage par défaut. Pandas, une bibliothèque de manipulation de données populaire en Python, fournit la méthode read_csv() pour importer des données à partir de fichiers CSV. Cependant, cette méthode peut parfois rencontrer l'UnicodeDecodeError lorsqu'elle traite des caractères codés Unicode.
Analyse des erreurs
Le message d'erreur fourni indique que la méthode read_csv() est en difficulté pour décoder un octet dans le fichier en utilisant le codage UTF-8 par défaut. L'octet de continuation non valide suggère que le fichier a peut-être été encodé avec un encodage différent.
Résolution du problème
Pour résoudre cette erreur, vous pouvez spécifier explicitement l'encodage lorsque lire le fichier CSV. Pandas fournit le paramètre d'encodage à cet effet. Les approches suivantes peuvent être utilisées :
Encodage ISO-8859-1 :
Utilisez l'encodage ISO-8859-1, qui est couramment utilisé pour les langues occidentales. Jeux de caractères européens :
data = pd.read_csv(filepath, encoding="ISO-8859-1")
UTF-8 Encodage :
Vous pouvez également essayer d'utiliser l'encodage UTF-8, qui convient aux jeux de caractères mondiaux :
data = pd.read_csv(filepath, encoding="utf-8")
Autres alias pour ISO-8859-1, tels que comme « latin » ou « cp1252 », peut également être utilisé. Reportez-vous à la documentation Pandas ou à la documentation Python pour une liste complète des encodages pris en charge.
Détection de l'encodage de fichier
Si vous n'êtes pas sûr de l'encodage du fichier CSV, vous pouvez utiliser des outils comme enca, file -i sous Linux ou file -I sous macOS pour déterminer le bon encodage.
Ressources supplémentaires
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!