Menu

Pandas UnicodeDecodeError

Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
- - Dernière réponse : salahoum
Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
- 6 févr. 2019 à 18:19

Bonjour,
y'a un solution ?


Configuration: Windows / Chrome 71.0.3578.98
Afficher la suite 

Votre réponse

2 réponses

Messages postés
24593
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 février 2019
1849
0
Merci
Bonjour,

Les images ne nous permettant pas de copier/coller si besoin....., merci de poster tes codes sur le forum en utilisant les BALISES DE CODE
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code




salahoum
Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
-
mais monsieur le code est très petit
import pandas as pd
df = pd.read_csv("transfoo.csv")
le problème est l'erreur
et merci
Whismeril
Messages postés
12755
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 février 2019
466 > salahoum
Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
-
Y’a pas de mais, c’est la troisième fois (au moins) qu’on te le demande.
C’est aussi la troisième fois (au moins) qu’on te demande de rester dans la discussion initiale
https://www.commentcamarche.net/forum/affich-35822704-lire-et-ecrire-des-csv-en-python
salahoum
Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
> Whismeril
Messages postés
12755
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 février 2019
-
je m’excuse
Commenter la réponse de jordane45
Messages postés
4919
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
20 février 2019
904
0
Merci
Donc, ton code est :

import pandas as pd
df = pd.read_csv("transfoo.csv") 

Et l'erreur retournée par pandas est :
"UnicodeDecodeError: 'utf-8' codec can't decode byte ..."
.

Cette erreur peut se produire lorsque le fichier texte que tu passes à pandas a un format d'encodage qui n'est pas Unicode.

Détermine quel est le format d'encodage de ton fichier. Ensuite, passe la description de ce format avec une option "encoding". Par exemple, pour un format en "ISO-8859-15" :

import pandas as pd
df = pd.read_csv('transfoo.csv', encoding = 'ISO-8859-15')

Dal
salahoum
Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
> [Dal]
Messages postés
4919
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
20 février 2019
-
apres changer le par Unicode
Whismeril
Messages postés
12755
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 février 2019
466 -
Je n’avais pas compris que la question était différente.
Les autres fils ont été supprimés
salahoum
Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
> Whismeril
Messages postés
12755
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 février 2019
-
apres la resolution de probleme de Unicoe je peux postuler un nouveaux question ou non
[Dal]
Messages postés
4919
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
20 février 2019
904 -
Bonjour Salahoum,

Sur CCM, comme sur la plupart des forums, il faut éviter de créer plusieurs fils de discussion pour une même question, car cela disperse l'information et c'est contre-productif pour tout le monde.

Si ta question est différente et ne concerne pas un sujet que tu as déjà ouvert, tu peux ouvrir un nouveau fil.

Dans ton cas actuel, tu sembles avoir résolu ton problème d'encodage (en utilisant chardet, je suppose), et tu as un nouveau message d'erreur indiquant que la ligne 8 de ton fichier comporte 38 champs, alors que pandas en attend un seul.

Avant d'ouvrir un nouvelle discussion pour cet autre problème, vérifie le format de ton fichier, en particulier cette ligne 8, et que son format est bien correct. vérifie aussi que ton caractère séparateur des colonnes pour ce fichier est bien la virgule,... car c'est étrange que ton fichier csv ait un seul champ...

Si tu ne passes pas de paramètre particulier à
pd.read_csv()
pandas va considérer que le caractère séparateur est la virgule. Si ton caractère séparateur est autre chose, par exemple un
;
tu dois utiliser l'option "delimiter". Vois la documentation :

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html

Par exemple,
delimiter=';'
...

Si ces indications ne résolvent pas ton problème, poste un nouveau fil avec (1) ton code, (2) un extrait des données du fichier jusqu'à la ligne 8, (3) le message d'erreur produit, (4) ta question précise, avec (5) un sujet pertinent par rapport à ta question (pas juste "Pandas").

Lorsque tu postes sur le forum, ne poste pas de captures d'écran pour des choses que tu pourrais poster par un copier-coller. Cela complexifie la consultation de tes messages, cela empêche de copier-coller nous même ce que tu postes et cela nuit au référencement de la page sur le moteur de recherche interne de CCM et les moteurs de recherche en général.

Pour poster du code sur le forum, clique sur le bouton à gauche du bouton pour l'insertion d'images (qui ressemble à
< > v
clique sur la flèche basse pour choisir le langage Python et met ton code à l'intérieur des balises code). Cela préservera l'indentation de ton code (fondamental pour Python), fera une coloration syntaxique du code posté et numérotera les lignes de code.


Dal
salahoum
Messages postés
21
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
6 février 2019
> [Dal]
Messages postés
4919
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
20 février 2019
-
merci beaucoup pour votre temps
le fichier était données par une appareil de mesure donc standard et j'ai pas le droit de le changer il faut le lire comme il'est reçu depuis l’appareil
le code est très simple j'ai pu lire plusieurs fichier csv mais le problème est sur le ficher lui même qui a besoin d’analyse et de code spécial par contre d'autre fichier c"est facile
Commenter la réponse de [Dal]