Dieses Tutorial zeigt, wie man effizient mehrere CSV-Dateien in ein Pandas DataFrame in Python importiert. Wir behandeln die Grundlagen von Pandas, das Lesen einzelner CSV-Dateien, das Importieren mehrerer Dateien und schließlich das Verketten dieser zu einem einzigen, einheitlichen DataFrame.
Inhaltsverzeichnis
- Was ist Pandas?
- Lesen einer einzelnen CSV-Datei
- Lesen mehrerer CSV-Dateien
- Verketten von DataFrames
- Behandlung potenzieller Fehler
1. Was ist Pandas?
Pandas ist eine Eckpfeiler-Bibliothek im Data-Science-Ökosystem von Python. Es bietet leistungsstarke, benutzerfreundliche Datenstrukturen und Datenanalyse-Tools. Die Kern-Datenstruktur ist das DataFrame, eine zweidimensionale, beschriftete Datenstruktur, ähnlich einer Tabellenkalkulation oder einer SQL-Tabelle. Pandas vereinfacht die Arbeit mit strukturierten Daten aus verschiedenen Quellen, darunter CSV-Dateien, Excel-Tabellen und Datenbanken.
2. Lesen einer einzelnen CSV-Datei
Bevor wir mehrere Dateien bearbeiten, lesen wir eine einzelne CSV-Datei:
import pandas as pd
file_path = 'your_file.csv' # Ersetzen Sie dies mit Ihrem Dateipfad
df = pd.read_csv(file_path)
print(df.head())
Dies importiert Pandas, gibt den Dateipfad an, liest die CSV-Datei mit pd.read_csv()
und zeigt die ersten fünf Zeilen mit df.head()
an.
3. Lesen mehrerer CSV-Dateien
Um mehrere CSV-Dateien aus einem Verzeichnis zu lesen, verwenden wir das glob
-Modul:
import pandas as pd
import glob
directory = 'path/to/your/csv/files/' # Ersetzen Sie dies mit Ihrem Verzeichnis
csv_files = glob.glob(directory + '*.csv')
dfs = []
for file in csv_files:
try:
df = pd.read_csv(file)
dfs.append(df)
except pd.errors.EmptyDataError:
print(f"Warnung: Überspringe leere Datei: {file}")
except pd.errors.ParserError:
print(f"Warnung: Überspringe Datei mit Parsing-Fehlern: {file}")
print(f"Anzahl der gelesenen DataFrames: {len(dfs)}")
Dieser Code findet alle CSV-Dateien im angegebenen Verzeichnis, liest jede in ein DataFrame ein und hängt sie an eine Liste an. Der try-except
-Block behandelt potenzielle Fehler wie leere Dateien oder Parsing-Fehler und verhindert, dass das Skript abstürzt.
4. Verketten von DataFrames
Schließlich kombinieren wir die einzelnen DataFrames:
combined_df = pd.concat(dfs, ignore_index=True)
print(combined_df.head())
combined_df.to_csv('combined_data.csv', index=False) #Optional: Speichern in einer neuen CSV
pd.concat(dfs, ignore_index=True)
verkettet alle DataFrames in der dfs
-Liste. ignore_index=True
setzt den Index für einen sauberen, kontinuierlichen Index zurück. Die optionale to_csv()
-Funktion speichert das Ergebnis.
5. Behandlung potenzieller Fehler
Robuste Skripte erwarten Probleme. Das Hinzufügen von Fehlerbehandlung, wie im Abschnitt zum Lesen mehrerer Dateien gezeigt, ist entscheidend. Erwägen Sie, Prüfungen auf die Existenz des Verzeichnisses und die Behandlung verschiedener Arten von Dateilesefehlern (z. B. falsche Trennzeichen, fehlende Spalten) hinzuzufügen. Dies stellt sicher, dass Ihr Skript zuverlässiger und weniger anfällig für unerwartete Fehler ist.