Heim  >  Artikel  >  Backend-Entwicklung  >  So lesen Sie eine TXT-Datei mit Pandas richtig

So lesen Sie eine TXT-Datei mit Pandas richtig

王林
王林Original
2024-01-19 08:39:151927Durchsuche

So lesen Sie eine TXT-Datei mit Pandas richtig

Für die Verwendung von Pandas zum korrekten Lesen von TXT-Dateien sind bestimmte Codebeispiele erforderlich.

Pandas ist eine weit verbreitete Python-Datenanalysebibliothek, mit der eine Vielzahl von Datentypen verarbeitet werden können, darunter CSV-Dateien, Excel-Dateien und SQL-Datenbanken , usw. Gleichzeitig können damit auch Textdateien, beispielsweise TXT-Dateien, gelesen werden. Beim Lesen von TXT-Dateien treten jedoch manchmal Probleme auf, z. B. Codierungsprobleme, Trennzeichenprobleme usw. In diesem Artikel wird erläutert, wie Pandas zum korrekten Lesen von TXT-Dateien verwendet werden, und es werden spezifische Codebeispiele bereitgestellt.

  1. Lesen Sie normale TXT-Dateien

Wenn Sie normale TXT-Dateien lesen möchten, müssen wir nur die Funktion read_csv in Pandas verwenden und den Dateipfad und das Trennzeichen angeben. Hier ist ein Beispiel:

import pandas as pd

# 读取txt文件
df = pd.read_csv('data.txt', sep='    ')

# 显示前5行数据
print(df.head())

In diesem Beispiel verwenden wir die Funktion read_csv, um die Datei data.txt zu lesen, und geben das Trennzeichen als Tabulatorzeichen an, nämlich „“. Jede Datenzeile in dieser Datei verwendet Tabulatorzeichen, um die Spalten zu trennen. Wenn wir kein Trennzeichen angeben, verwendet Pandas standardmäßig Komma als Trennzeichen.

  1. Lesen Sie TXT-Dateien mit Chinesisch.

Beim Lesen von TXT-Dateien mit Chinesisch müssen wir auf Kodierungsprobleme achten. Wenn die Codierung der Datei utf-8 ist, müssen wir nur die Codierungsmethode in der Funktion read_csv angeben. Hier ist ein Beispiel:

import pandas as pd

# 读取txt文件
df = pd.read_csv('data.txt', sep='    ', encoding='utf-8')

# 显示前5行数据
print(df.head())

In diesem Beispiel geben wir die Kodierungsmethode als utf-8 in der Funktion read_csv an.

Wenn die Dateikodierung jedoch nicht UTF-8 ist, müssen wir die Dateikodierung vor dem Lesen in UTF-8 konvertieren. Wenn die Codierung der Datei beispielsweise gbk ist, können wir den folgenden Code verwenden, um die Datei zu lesen:

import pandas as pd

# 先将文件编码转换成utf-8
with open('data.txt', 'r', encoding='gbk') as f:
    text = f.read()
    text = text.encode('utf-8')
    with open('data_utf8.txt', 'wb') as f2:
        f2.write(text)

# 读取转换后的txt文件
df = pd.read_csv('data_utf8.txt', sep='    ', encoding='utf-8')

# 显示前5行数据
print(df.head())

In diesem Beispiel verwenden wir zuerst die Open-Funktion, um die Originaldatei zu öffnen und sie in eine UTF-8-codierte Datei zu konvertieren Zeichenfolge. Anschließend öffnen wir mit der Funktion „open“ eine weitere Datei und schreiben den konvertierten String hinein. Abschließend lesen wir die konvertierte TXT-Datei, genau wie im vorherigen Beispiel, und geben dabei das Trennzeichen als Tab und die Kodierung als utf-8 an.

  1. Textdateien mit fehlenden Werten lesen

Wenn die TXT-Datei fehlende Werte enthält, können wir den Parameter na_values ​​​​in der Funktion read_csv verwenden, um die Darstellung fehlender Werte anzugeben. Wenn fehlende Werte beispielsweise durch die Zeichen „#N/A“ dargestellt werden, können wir den folgenden Code verwenden, um die Datei zu lesen:

import pandas as pd

# 读取txt文件,指定缺失值的表示方式为'#N/A'
df = pd.read_csv('data.txt', sep='    ', na_values='#N/A')

# 显示前5行数据
print(df.head())

In diesem Beispiel verwenden wir den Parameter na_values ​​​​in der Funktion read_csv, um Geben Sie „#N/A“ als Darstellung fehlender Werte an. Auf diese Weise identifiziert Pandas diese Werte automatisch als NaN (fehlende Werte), was unsere nachfolgende Datenverarbeitung erleichtert.

  1. Textdateien lesen, die Datum und Uhrzeit enthalten

Wenn die TXT-Datei Daten im Datums- und Uhrzeitformat enthält, können wir den Parameter parse_dates in der Funktion read_csv verwenden, um sie in Datums- und Uhrzeittypen in Pandas zu konvertieren. Wenn die Datei beispielsweise eine Spalte mit dem Namen „Datum“ enthält und das Datenformat „JJJJ-MM-TT“ ist, können wir den folgenden Code verwenden, um die Datei zu lesen:

import pandas as pd

# 读取txt文件,并将'date'列的数据转换成日期时间类型
df = pd.read_csv('data.txt', sep='    ', parse_dates=['date'])

# 显示前5行数据
print(df.head())

In diesem Beispiel verwenden wir die Funktion read_csv den Parameter parse_dates, um anzugeben, dass die Daten in der Spalte „Datum“ in einen Datums- und Uhrzeittyp konvertiert werden sollen. Auf diese Weise werden sie von Pandas automatisch in Datetime-Typen umgewandelt, um unsere anschließende Datenverarbeitung zu erleichtern.

Zusammenfassend können wir die Funktion read_csv in Pandas verwenden, um TXT-Dateien zu lesen und entsprechende Lösungen für verschiedene Probleme zu finden. Gleichzeitig müssen wir auch auf einige Details achten, wie z. B. die Codierungsmethode, die Methode zur Darstellung fehlender Werte, das Datums- und Uhrzeitformat usw.

Das obige ist der detaillierte Inhalt vonSo lesen Sie eine TXT-Datei mit Pandas richtig. 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