Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich UnicodeDecodeError beim Lesen von CSV-Dateien in Pandas beheben?

Wie kann ich UnicodeDecodeError beim Lesen von CSV-Dateien in Pandas beheben?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-26 09:16:11433Durchsuche

How Can I Resolve UnicodeDecodeError When Reading CSV Files in Pandas?

UnicodeDecodeError: Beheben von Codierungsproblemen beim Lesen von CSV-Dateien in Pandas

Einführung

Arbeiten mit CSV-Dateien stellen häufig Probleme bei der Kodierung dar, insbesondere wenn sie auf Zeichen stoßen, die von der Standardkodierung nicht unterstützt werden. Pandas, eine beliebte Datenbearbeitungsbibliothek in Python, bietet die Methode read_csv() zum Importieren von Daten aus CSV-Dateien. Allerdings kann diese Methode gelegentlich auf den UnicodeDecodeError stoßen, wenn sie mit Unicode-codierten Zeichen arbeitet.

Fehleranalyse

Die bereitgestellte Fehlermeldung weist darauf hin, dass die Methode read_csv() Probleme hat um ein Byte innerhalb der Datei mit der Standard-UTF-8-Kodierung zu dekodieren. Das ungültige Fortsetzungsbyte deutet darauf hin, dass die Datei möglicherweise mit einer anderen Codierung codiert wurde.

Beheben des Problems

Um diesen Fehler zu beheben, können Sie die Codierung explizit angeben, wenn Lesen der CSV-Datei. Pandas stellt hierfür den Kodierungsparameter bereit. Folgende Ansätze können eingesetzt werden:

  • ISO-8859-1-Kodierung:
    Verwenden Sie die ISO-8859-1-Kodierung, die üblicherweise für Western verwendet wird Europäische Zeichensätze:

    data = pd.read_csv(filepath, encoding="ISO-8859-1")
  • UTF-8 Kodierung:
    Alternativ versuchen Sie es mit der UTF-8-Kodierung, die für weltweite Zeichensätze geeignet ist:

    data = pd.read_csv(filepath, encoding="utf-8")

Andere Aliase für ISO-8859-1, z B. „latin“ oder „cp1252“, können ebenfalls verwendet werden. Eine umfassende Liste der unterstützten Kodierungen finden Sie in der Pandas-Dokumentation oder der Python-Dokumentation.

Dateikodierung erkennen

Wenn Sie sich über die Kodierung der CSV-Datei nicht sicher sind, Sie können Tools wie enca, file -i unter Linux oder file -I unter macOS verwenden, um die richtige Kodierung zu ermitteln.

Zusätzlich Ressourcen

  • [Pandas read_csv() Dokumentation](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html)
  • [Python CSV-Modul Beispiele](https://docs.python.org/3/library/csv.html#examples)
  • [Was jeder Entwickler über Unicode und Zeichensätze wissen sollte](https://unicode.org/ Berichte/tr15/)

Das obige ist der detaillierte Inhalt vonWie kann ich UnicodeDecodeError beim Lesen von CSV-Dateien in Pandas beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn