Maison >développement back-end >Tutoriel Python >Comment résoudre l'erreur Pandas « pandas.parser.CParserError : Erreur de tokenisation des données » lors de la lecture de fichiers CSV ?

Comment résoudre l'erreur Pandas « pandas.parser.CParserError : Erreur de tokenisation des données » lors de la lecture de fichiers CSV ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-08 22:04:12218parcourir

How to Solve the Pandas `pandas.parser.CParserError: Error tokenizing data` Error When Reading CSV Files?

Dépannage 'pandas.parser.CParserError : erreur de tokenisation des données' pour l'analyse CSV Pandas

On peut rencontrer l'erreur 'pandas.parser.CParserError : Erreur de tokenisation des données lors de l'utilisation de pd.read_csv fonction de la bibliothèque Pandas, indiquant un écart entre le nombre de champs attendu et rencontré dans une ligne donnée du fichier CSV.

Le message d'erreur implique que la bibliothèque a anticipé deux champs dans une ligne particulière (ligne 3 dans ce cas) mais en a rencontré 12 à la place. Cette disparité peut survenir en raison de données mal formées, telles que des valeurs manquantes ou des virgules supplémentaires dans un champ.

Pour résoudre le problème et procéder à l'analyse CSV, envisagez l'approche suivante :

Utilisez le Paramètre on_bad_lines :

data = pd.read_csv(path, on_bad_lines='skip')

Cette méthode ignore les lignes incriminées avec des champs inattendus, permettant ainsi au processus de lecture de continuer.

Pour une gestion plus avancée des lignes non valides, implémentez un appelable personnalisé qui définit les actions à entreprendre lorsque de mauvaises lignes sont détectées.

Si votre version de Pandas est inférieure à 1.3.0, vous pouvez remplacer on_bad_lines paramètre avec error_bad_lines:

data = pd.read_csv("file1.csv", error_bad_lines=False)

Cette option ignore également les lignes problématiques, mais sans avoir besoin d'un appel personnalisé .

Comme alternative à Pandas, vous pouvez explorer en utilisant le module CSV en Python, qui fournit utilitaires de base pour analyser les fichiers CSV. Cependant, il n'offre peut-être pas le même niveau de flexibilité et de fonctionnalités que Pandas.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn