CSV-Trennzeichen flexibler für unregelmäßige Leerzeichen in Pandas machen
Bei Verwendung von pandas.read_csv() zum Erstellen von Datenrahmen aus Dateien mit unregelmäßigen Spaltentrennzeichen Es ist üblich, auf Herausforderungen zu stoßen. Einige Spalten können durch Tabulatoren getrennt sein, während andere durch eine unterschiedliche Anzahl von Leerzeichen oder sogar eine Mischung aus Leerzeichen und Tabulatoren getrennt sind. Diese Unregelmäßigkeit kann zu Parsing-Problemen führen.
Um dieses Problem zu lösen, bietet Pandas zwei Optionen: die Verwendung eines regulären Ausdrucks (Regex) oder die Einstellung von delim_whitespace.
Verwendung eines regulären Ausdrucks
Mit der Regex-Option können Sie ein Muster für das Trennzeichen angeben. Zum Beispiel:
<code class="python">import pandas as pd df = pd.read_csv("file.csv", header=None, delimiter=r"\s+")</code>
Hier entspricht r"s " einem oder mehreren Leerzeichen (einschließlich Leerzeichen und Tabulatoren).
Verwendung von delim_whitespace
Die Option delim_whitespace=True erkennt automatisch Leerzeichen (Leerzeichen und Tabulatoren) als Trennzeichen:
<code class="python">df = pd.read_csv("file.csv", header=None, delim_whitespace=True)</code>
Vergleich mit Pythons Split()-Methode
Das haben Sie in Python erwähnt , können Sie line.split() verwenden, um variable Leerzeichen ohne Probleme zu verarbeiten. pandas.read_csv() bietet eine ähnliche Flexibilität durch die Optionen delim_whitespace und regex.
Beispiel
Verwendung der folgenden Eingabedatei (whitespace.csv):
a b c 1 2 d e f 3 4
Der folgende Code erstellt einen Datenrahmen mit korrekter Spaltentrennung, unabhängig vom Trennzeichentyp:
<code class="python">df = pd.read_csv("whitespace.csv", header=None, delim_whitespace=True) print(df) 0 1 2 3 4 0 a b c 1 2 1 d e f 3 4</code>
Das obige ist der detaillierte Inhalt vonWie können Pandas mit unregelmäßigen Leerzeichen bei der CSV-Trennung umgehen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!