Erreur due à UnicodeDecodeError lors de la lecture d'un fichier CSV avec Python [Pour les débutants]

introduction

J'ai résumé les raisons pour lesquelles l'erreur suivante apparaît lors de la lecture d'un fichier csv avec python.

 import pandas as pd
pd.read_csv("file/to/path")

J'espère que cela sera utile pour ceux qui ont le code suivant lors de la lecture de_csv avec des pandas.

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x90 in position 0: invalid start byte

1. Solution

Pour conclure d'abord, veuillez utiliser le code ci-dessous.

pd.read_csv("file/to/path", encoding="shift-jis")

encoding="shift-jis"

Si vous venez de le mettre, ça devrait être OK! Si vous obtenez toujours une erreur, lisez 2 et plus tard et considérez la raison.

2. Pourquoi vous obtenez une erreur

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x90 in position 0: invalid start byte

En premier lieu, ce qui met cette erreur en colère est grossier. Il indique que les données ne peuvent pas être lues si le code de caractère "utf-8" est utilisé.

Par exemple, je ne peux pas lire l'anglais, alors changez-le en japonais, puis lisez les données! C'est comme ça.

Alors convertissons-le en un autre code de caractère. La conversion de ce code de caractère est appelée encodage.

3. Alors pourquoi est-ce "shift-jis"?

Afin de l'expliquer, laissez-moi vous expliquer brièvement le code de caractère typique.

UTF-8 C'est l'un des codes de caractères les plus populaires au monde et l'une des méthodes de codage pour Unicode. Il est établi dans le but d'utiliser les caractères définis en ASCII comme ils le sont en Unicode.

Mis à part les choses difficiles ici, il est normal de reconnaître que c'est le plus utilisé.

Code JIS

Il s'agit d'un code de caractères standard sur Internet, en particulier pour les e-mails.

EUC Abréviation de Extended Unix Code, utilisée par UNIX japonais.

Shift_JIS Un code développé par Microsoft, qui est un caractère de code ASCII avec des caractères japonais ajoutés. Il est également utilisé sous Windows et Mac et est largement utilisé pour les fichiers sur PC.

** En d'autres termes, le fichier csv contenant du japonais ne peut pas être lu par UTF-8, changez-le donc en Shift_JIS **

Pour ceux qui n'ont pas pu lire les données après l'encodage en Shift_JIS Pensez à quel autre code de caractère le fichier s'insère et essayez-le.


Au moment où vous écrivez un mémo

Recommended Posts

Erreur due à UnicodeDecodeError lors de la lecture d'un fichier CSV avec Python [Pour les débutants]
[Python] Ecrire dans un fichier csv avec Python
Sortie vers un fichier csv avec Python
[Python: UnicodeDecodeError] L'une des solutions d'erreur lors de la lecture de CSV
Comment lire un fichier CSV avec Python 2/3
J'ai essayé de toucher un fichier CSV avec Python
Erreur due à un conflit entre pythons lors de l'utilisation de gurobi
Comment convertir un fichier JSON en fichier CSV avec Python Pandas
Erreur lors de la lecture avec python
Écrire en csv avec Python
~ Conseils pour les débutants de Python présentés avec amour par Pythonista ③ ~
Télécharger le fichier csv avec python
Erreur d'autorisation lors de la lecture du fichier de téléchargement Django
[Python] Lecture de fichiers CSV
Lire et écrire des fichiers csv
[Python: UnicodeDecodeError] L'une des solutions d'erreur lors de la lecture de CSV
Erreur due à UnicodeDecodeError lors de la lecture d'un fichier CSV avec Python [Pour les débutants]
[Python] Choses à vérifier lorsqu'une erreur de décodage Unicode apparaît dans Django
Lecture et écriture de fichiers CSV Python
Lire et écrire du CSV avec Python
[Pandas] J'ai essayé d'analyser les données de ventes avec Python [Pour les débutants]
Atom: Remarque pour l'erreur d'indentation lors de la copie du script Python dans le shell
[Python] Comment convertir un fichier db en csv
INSÉRER dans MySQL avec Python [Pour les débutants]
Mémo pour demander des KPI avec python
Lire le fichier CSV avec python (Télécharger et analyser le fichier CSV)
[Python] Convertit les délimiteurs de fichier csv en délimiteurs de tabulation
[Python] Lire des images avec OpenCV (pour les débutants)
[Part1] Scraping avec Python → Organisez jusqu'à csv!
Python> Numéros de sortie de 1 à 100, 501 à 600> Pour csv
Création WebApi avec Python (création CRUD) Pour les débutants
[Pour les débutants] Essayez le web scraping avec Python
Comment gérer l'erreur OAuth2 lors de l'utilisation des API Google à partir de Python
J'obtiens un UnicodeDecodeError en essayant de me connecter à oracle avec python sqlalchemy
Conseils aux débutants en Python pour utiliser l'exemple Scikit-image pour eux-mêmes 3 Écrire dans un fichier
Lisez le fichier CSV avec Python et convertissez-le en DataFrame tel quel
Mémo n ° 4 que les débutants Python lisent "Explication détaillée de la grammaire Python"
Erreur lors de l'installation d'un module avec Python pip
Le moyen le plus rapide pour les débutants de maîtriser Python
Grattage de la nourriture avec python et sortie en CSV
Raisonnement causal et recherche causale par Python (pour les débutants)
[Python] Comment lire des fichiers Excel avec des pandas
Mémo n ° 3 que les débutants Python lisent "Explication détaillée de la grammaire Python"
Convertir un fichier svg en png / ico avec Python
Écriture de journaux dans un fichier CSV (Python, langage C)
Mémo n ° 1 que les débutants Python lisent "Explication détaillée de la grammaire Python"
~ Conseils pour les débutants de Python donnés avec amour par Pythonista ① ~
Code de caractères pour la lecture et l'écriture de fichiers csv avec python
La synchronisation de la sortie est incorrecte lorsque la sortie standard (erreur) est convertie en fichier en Python
Essayez de calculer RPN avec Python (pour les débutants)
J'ai essayé de lire un fichier CSV en utilisant Python
Mémo n ° 2 que les débutants Python lisent "Explication détaillée de la grammaire Python"
Que faire si vous obtenez une erreur lors de l'installation de python avec pyenv
Écrire des données CSV sur AWS-S3 avec AWS-Lambda + Python
Introduction à la programmation (Python) TA Tendency pour les débutants
Erreur lors de la tentative d'installation de psycopg2 en Python
Mémo n ° 6 pour les débutants Python à lire "Explication détaillée de la grammaire Python"
Je veux écrire dans un fichier avec Python
Comment rendre le Python des débutants plus rapide [numpy]
~ Conseils pour les débutants de Python donnés avec amour par Pythonista ② ~
Matériel à lire lors de la mise en route de Python
Mémo n ° 5 que les débutants Python lisent "Explication détaillée de la grammaire Python"
[Introduction pour les débutants] Manipuler MySQL avec Python