Zielgruppe: Mitarbeiter der Kalkulationsabteilung, Nordseewerft GmbH
Voraussetzungen: Keine Python-Kenntnisse, Git-Grundlagen vorhanden
Ziel: Große, unharmonisierte Excel-Dateien mit Python effizient analysieren
# 1. Repository klonen
git clone <repo-url>cd python_kurs
# 2. Abhängigkeiten installieren
pip install -r requirements.txt
# 3. JupyterLab starten
jupyter labDann die Notebooks in notebooks/ der Reihe nach öffnen.
| Modul | Datei | Inhalt |
|---|---|---|
| 01 | 01_grundlagen_jupyter_python.ipynb | Jupyter, Variablen, Schleifen, Funktionen |
| 02 | 02_pandas_einfuehrung.ipynb | Series, DataFrame, Filtern, Aggregation |
| 03 | 03_excel_laden_speichern.ipynb | read_excel, to_excel, mehrere Sheets |
| 04 | 04_daten_erkunden.ipynb | EDA: Fehlende Werte, Verteilungen, Duplikate |
| 05 | 05_daten_bereinigen.ipynb | dropna, fillna, Typen, Strings bereinigen |
| 06 | 06_daten_harmonisieren.ipynb | Mapping, Regex, Fuzzy Matching, Einheiten |
| 07 | 07_aggregation_statistik.ipynb | groupby, agg, pivot_table, Plan-vs-Ist |
| 08 | 08_visualisierung.ipynb | matplotlib: Balken, Linien, Scatter, Subplots |
| 09 | 09_tabellen_zusammenfuehren.ipynb | concat, merge (inner/left/outer) |
| 10 | 10_automatisierung_berichte.ipynb | Pipelines, formatierte Excel-Berichte |
Alle Dateien unter daten/ sind synthetische Beispieldaten der fiktiven
Nordseewerft GmbH und enthalten bewusst eingebaute Qualitätsprobleme:
| Datei | Inhalt | Zeilen |
|---|---|---|
01_projekte_stammdaten.xlsx | 10 Schiffbauprojekte 2020–2023 | 10 |
02_materialkalkulation_roh.xlsx | Materialpositionen (unharmonisiert) | ~1.300 |
03_lieferanten_stammdaten.xlsx | Lieferanten mit Duplikaten | ~30 |
04_arbeitsstunden_2020_2023.xlsx | Plan/Ist-Stunden je Gewerk & Monat | ~1.700 |
Eingebaute Qualitätsprobleme:
- Gemischte Datumsformate (
12.03.2022,2022-03-12,März 2022) - Schreibvarianten derselben Materialien und Lieferanten
- Inkonsistente Einheiten (
kgvs.t,mvs.lfdm,m²vs.qm) - Verschiedene Projekt-Nr-Formate (
NW-2021-001,nw/2021/001,2021/001) - Fehlende Werte (~5–15 % pro Spalte)
- Duplikate (~60 in der Materialkalkulation)
Alle Aufgaben enthalten Lösungen als versteckte Zellen direkt darunter.
- JupyterLab: Die Zelle ist standardmäßig eingeklappt. Klick auf die Zelle → linkes Symbol zum Aufklappen.
- Classic Notebook: Klick auf "..." unter der Aufgabe, dann
Toggle cell. - VS Code Jupyter: Klick auf
...→Show Cell.
- Führe Zellen immer von oben nach unten aus (
Shift+Enter) - Wenn eine Zelle einen Fehler wirft, zuerst alle vorherigen Zellen erneut ausführen
- Nutze
Kernel → Restart & Run Allum das komplette Notebook frisch zu starten - Bei
FileNotFoundError: Sicherstellen, dass du dich imnotebooks/-Ordner befindest (das../daten/-Präfix setzt das voraus)