In Data-Science-Projekten ist es nicht nur wichtig, Daten zu laden, sondern auch ergebnisse zu speichern. Dies kann nach der Datenanalyse, nach Berechnungen oder nach Machine-Learning-Prozessen notwendig sein. Python und Pandas bieten dafür einfach zu nutzende Funktionen, um Daten in CSV-, Excel- oder SQL-Datenbanken zu speichern. In diesem Teil lernst du, wie man Daten effizient speichert und exportiert.
1. CSV-Dateien speichern
CSV (Comma Separated Values) ist das am häufigsten verwendete Format, um tabellarische Daten auszutauschen.
Einfacher Export
import pandas as pd
# Beispiel-DataFrame
df = pd.DataFrame({
"Name": ["Anna", "Ben", "Clara", "David"],
"Alter": [28, 35, 22, 30],
"Land": ["Deutschland", "Österreich", "Deutschland", "Schweiz"]
})
# Als CSV speichern
df.to_csv("kunden_neu.csv", index=False)
index=Falseverhindert, dass der DataFrame-Index gespeichert wird- Standardmäßig wird Komma als Trennzeichen verwendet
Mit Optionen
df.to_csv("kunden_semi.csv", sep=";", encoding="utf-8", header=True)
sep=";"→ Semikolon als Trennzeichenencoding="utf-8"→ für Umlaute und Sonderzeichenheader=True→ Spaltennamen schreiben
2. Excel-Dateien speichern
Excel-Dateien sind besonders beliebt für Berichte und Austausch mit Kollegen.
# Excel-Datei speichern
df.to_excel("kunden_neu.xlsx", sheet_name="Daten", index=False)
sheet_name→ Name des Arbeitsblattsindex=False→ verhindert Speicherung des Index
Mehrere DataFrames in ein Excel-Workbook speichern
with pd.ExcelWriter("kunden_bericht.xlsx") as writer:
df.to_excel(writer, sheet_name="Kunden", index=False)
df.describe().to_excel(writer, sheet_name="Statistik")
- Nützlich für übersichtliche Berichte mit mehreren Tabellen
3. Daten in SQL-Datenbanken speichern
Datenbanken sind ideal für strukturierte Daten, die regelmäßig aktualisiert werden.
SQLite Beispiel
import sqlite3
# Verbindung erstellen
conn = sqlite3.connect("kunden.db")
# DataFrame in SQL speichern
df.to_sql("kunden", conn, if_exists="replace", index=False)
# Verbindung schließen
conn.close()
if_exists="replace"→ Tabelle überschreibenindex=False→ Index nicht speichern
PostgreSQL oder MySQL
from sqlalchemy import create_engine
engine = create_engine("postgresql://user:pass@localhost:5432/meinedb")
df.to_sql("kunden", engine, if_exists="replace", index=False)
- Einfacher Transfer von DataFrame in relationale Datenbanken
4. Praxisbeispiel: Data-Science-Projekt speichern
# CSV laden
df = pd.read_csv("kunden.csv")
# Analyse durchführen
df["Alter_in_5_Jahren"] = df["Alter"] + 5
df["VIP"] = df["Name"].isin(["Anna", "Clara"])
# CSV speichern
df.to_csv("kunden_analyse.csv", index=False)
# Excel speichern
with pd.ExcelWriter("kunden_analyse.xlsx") as writer:
df.to_excel(writer, sheet_name="Analyse", index=False)
df.describe().to_excel(writer, sheet_name="Statistik")
# SQLite speichern
import sqlite3
conn = sqlite3.connect("kunden.db")
df.to_sql("kunden_analyse", conn, if_exists="replace", index=False)
conn.close()
- Zeigt mehrere Speicherformate gleichzeitig
- Praktisch für Berichte, Analysen und Datenbanken
5. Tipps für Data Science
- Format wählen nach Zweck – CSV für Austausch, Excel für Berichte, SQL für Datenbanken
- Index bewusst speichern – unnötige Indizes vermeiden
- Encoding prüfen – besonders bei Umlauten oder Sonderzeichen
- Automatisierte Speicherung – Skripte schreiben, die Ergebnisse speichern
- Mehrere Tabellen in Excel – für saubere Präsentation
Schreibe einen Kommentar