0Pricing
Pandas & NumPy Academy · Lektion

Ergebnisse in einem Bericht zusammenfassen

Fassen Sie zentrale Erkenntnisse in einer strukturierten Markdown-Zusammenfassung mit eingebetteten Verweisen auf Visualisierungen und konkreten nächsten Schritten zusammen.

Ergebnisse in einem Bericht zusammenfassen ist eine kostenlose Pandas & NumPy Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Pandas & NumPy Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Pandas & NumPy Academy-Kurs umfasst insgesamt 4 Lektionen.

Warum ein strukturierter EDA-Bericht wichtig ist

Unbearbeitete Jupyter-Notebooks mit Hunderten von Diagrammen und Codezellen lassen sich nur schwer mit Stakeholdern teilen, die auf Grundlage der Ergebnisse handeln müssen. Ein strukturierter EDA-Zusammenfassungsbericht verdichtet die wichtigsten Erkenntnisse aus Ihrer univariaten und bivariaten Analyse zu einer klaren Darstellung. Gute Berichte trennen Ergebnisse (was die Daten zeigen) von Implikationen (was daraus zu tun ist) und enthalten unterstützende Visualisierungen nur für wichtige Aussagen.

Die sechs Abschnitte eines EDA-Berichts

Ein professioneller EDA-Bericht enthält typischerweise sechs Abschnitte: 1) Datensatzüberblick (Form, Quelle, Zeitraum), 2) Probleme der Datenqualität (fehlende Werte, Ausreißer, Duplikate und deren Behandlung), 3) Verteilungen der wichtigsten Variablen (die bedeutendsten numerischen und kategorialen Spalten), 4) Korrelationen und Zusammenhänge (die stärksten festgestellten Beziehungen), 5) Erkenntnisse zu Untergruppen (für die Geschäftsfrage relevante Gruppenunterschiede) und 6) Empfohlene nächste Schritte (Bereinigungsmaßnahmen, Vorschläge für die Modellierung).

Den Abschnitt zum Datensatzüberblick verfassen

Der Überblicksabschnitt sollte programmgesteuert erstellt werden, damit er stets korrekt ist. Erfassen Sie Form, Spaltennamen und Datentypen, den Datumsbereich (falls zutreffend) sowie die Quelle oder Version des Datensatzes. Wenn Sie diesen Abschnitt als Code statt als Fließtext verfassen, vermeiden Sie den häufigen Fehler, in einem Bericht einen Datensatz mit 10.000 Zeilen zu beschreiben, obwohl der Bericht tatsächlich aus einer bereinigten Version mit 9.800 Zeilen erzeugt wurde.

import pandas as pd
import seaborn as sns

df = sns.load_dataset('titanic')

print('=== DATASET OVERVIEW ===')
print(f'Shape: {df.shape[0]:,} rows x {df.shape[1]} columns')
print(f'Columns: {", ".join(df.columns)}')
print(f'Numeric: {df.select_dtypes("number").shape[1]} columns')
print(f'Categorical: {df.select_dtypes("object").shape[1]} columns')
print(f'Boolean: {df.select_dtypes("bool").shape[1]} columns')
print(f'Total missing cells: {df.isna().sum().sum():,}')
print(f'Duplicate rows: {df.duplicated().sum()}')

Den Abschnitt zur Datenqualität verfassen

Im Abschnitt zur Datenqualität werden alle gefundenen Probleme und die jeweils getroffene Entscheidung aufgeführt. Verwenden Sie ein Tabellenformat mit den Spalten: Spalte, Problem, Schweregrad (hoch/mittel/niedrig), Ergriffene Maßnahme. Berechnen Sie diese Tabelle programmgesteuert aus den Ergebnissen der Profilerstellung, damit sie bei Änderungen der Daten automatisch aktualisiert wird. Der Schweregrad sollte die geschäftlichen Auswirkungen widerspiegeln – eine fehlende Zielvariable ist von hoher Bedeutung, eine fehlende nicht prädiktive Spalte kann von geringer Bedeutung sein.

import pandas as pd
import seaborn as sns

df = sns.load_dataset('titanic')

# Auto-generate data quality table
missing_pct = (df.isna().sum() / len(df) * 100).round(1)
quality = missing_pct[missing_pct > 0].to_frame(name='missing_pct')
quality['severity'] = quality['missing_pct'].apply(
    lambda x: 'High' if x > 30 else ('Medium' if x > 10 else 'Low')
)
quality['action'] = quality['missing_pct'].apply(
    lambda x: 'Drop column' if x > 50 else 'Impute or flag'
)
print(quality.to_string())

Zusammenfassende Abbildungen mit mehreren Teilbereichen erstellen

Eine zusammenfassende Abbildung kombiniert mehrere Diagramme in einem Bild, das in einen Bericht eingebettet werden kann. Verwenden Sie plt.subplots(rows, cols), um ein Raster zu erstellen, und weisen Sie jedem wichtigen Ergebnis einen eigenen Teilbereich zu. Speichern Sie die Abbildung mit savefig() in einer für das Ausgabeformat geeigneten DPI-Auflösung (150 für die Bildschirmdarstellung, 300 für den Druck). Geben Sie jedem Teilbereich einen klaren Ergebnistitel wie 'Fare is right-skewed (skew=4.1)' statt lediglich den Spaltennamen.

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = sns.load_dataset('titanic')

fig, axes = plt.subplots(2, 2, figsize=(12, 10))

# 1. Fare distribution
sns.histplot(df['fare'], kde=True, bins=30, ax=axes[0][0])
axes[0][0].set_title('Fare is right-skewed (skew=4.1)')

# 2. Survival by class
survival = df.groupby('class')['survived'].mean().reset_index()
sns.barplot(data=survival, x='class',
            y='survived', order=['First', 'Second', 'Third'], ax=axes[0][1])
axes[0][1].set_title('Survival Rate Drops by Class')

# 3. Age distribution
sns.histplot(df['age'].dropna(), kde=True, bins=25, ax=axes[1][0], color='coral')
axes[1][0].set_title('Age: Near-Normal, Missing 20%')

# 4. Embarkation counts
sns.countplot(data=df, x='embarked', ax=axes[1][1], palette='Set2')
axes[1][1].set_title('Most Boarded at Southampton')

plt.tight_layout()
plt.savefig('/tmp/eda_summary.png', dpi=150, bbox_inches='tight')
plt.show()
print('Saved: /tmp/eda_summary.png')

Ergebnisse als erläuternden Text verfassen

Jedes wichtige Ergebnis sollte als geschäftsrelevanter Satz formuliert werden, nicht als technische Beschreibung. Schreiben Sie statt 'The fare column has skewness=4.1' besser 'Ticket prices are extremely right-skewed — a small number of first-class passengers paid over 10× the median fare, which may distort revenue analyses that use mean pricing.' Diese Übertragung von einer statistischen Beobachtung zu einer geschäftlichen Implikation macht EDA-Berichte für nichttechnische Stakeholder wertvoll.

Markdown-Berichte programmgesteuert erstellen

Sie können EDA-Berichte direkt aus Python als Markdown-Dateien schreiben. Erstellen Sie eine Zeichenkette mit Markdown-Überschriften, Aufzählungspunkten und eingebetteten Bildlinks und schreiben Sie sie anschließend in eine .md-Datei. Dieser Ansatz erzeugt reproduzierbare Berichte, die bei Änderungen der zugrunde liegenden Daten automatisch aktualisiert werden – dadurch eignen sie sich für die Integration in Ausgabeartefakte von Datenpipelines oder Git-Repositorys.

import pandas as pd
import seaborn as sns

df = sns.load_dataset('titanic')

# Build a simple markdown report
lines = [
    '# EDA Summary Report: Titanic Dataset',
    '',
    '## Overview',
    f'- **Rows:** {len(df):,}',
    f'- **Columns:** {df.shape[1]}',
    f'- **Total Missing Cells:** {df.isna().sum().sum():,}',
    '',
    '## Key Findings',
    '- First-class passengers had a 63% survival rate vs 24% for third class.',
    '- Fare is extremely right-skewed (skew=4.1); use log transform before modelling.',
    '- Age is missing in 20% of rows — median imputation recommended.',
    '',
    '## Recommended Next Steps',
    '1. Impute age with median grouped by class.',
    '2. Drop the cabin column (77% missing).',
    '3. Log-transform fare before any regression modelling.',
]

with open('/tmp/eda_report.md', 'w') as f:
    f.write('\n'.join(lines))

print('Report written to /tmp/eda_report.md')
print('\n'.join(lines[:10]))

Mit Jupyter nach HTML exportieren

Jupyter-Notebooks können mit jupyter nbconvert --to html notebook.ipynb nach HTML oder PDF exportiert werden. Dadurch bleiben alle Diagramme, der Code und die Markdown-Zellen in einer einzigen teilbaren Datei erhalten, für deren Anzeige keine Python-Installation erforderlich ist. Für eine vollständig automatisierte Pipeline können Sie das Notebook mit papermill programmgesteuert ausführen: papermill input.ipynb output.ipynb -p date '2024-01-01'. Dabei wird das Notebook parametrisiert und wie ein Skript ausgeführt.

# To export a Jupyter notebook to HTML:
# jupyter nbconvert --to html eda_notebook.ipynb

# To parameterise and run with papermill:
# pip install papermill
# papermill eda_template.ipynb eda_2024.ipynb -p date '2024-01-01' -p min_rows 1000

# The output notebook can then be exported:
# jupyter nbconvert --to html eda_2024.ipynb
print('Jupyter nbconvert and papermill automate report generation.')

Umsetzbare nächste Schritte strukturieren

Der Abschnitt empfohlene nächste Schritte wird in EDA-Berichten häufig am meisten gelesen. Strukturieren Sie ihn als priorisierte Checkliste: P1 (blockierend) – Probleme, die behoben werden müssen, bevor eine Analyse gültig ist (z. B. falsch erkannte Datentypen), P2 (wichtig) – Bereinigungsmaßnahmen, die die Modellleistung deutlich beeinflussen (z. B. die Behandlung von Ausreißern), P3 (wünschenswert) – Ideen zur Anreicherung und zusätzliche Datenquellen, die untersucht werden sollten. Diese Einteilung erleichtert es dem Team, den Aufwand angemessen zu verteilen.

ydata-profiling für eine schnelle Berichterstellung verwenden

ydata-profiling (pip install ydata-profiling) erzeugt mit einem einzigen Aufruf einen umfassenden HTML-Bericht. Der Bericht enthält Übersichtsstatistiken, Variablenverteilungen, Korrelationen, Muster fehlender Werte und die Erkennung von Duplikaten – also alle Abschnitte eines manuell erstellten EDA-Berichts. Verwenden Sie es zu Beginn eines Projekts für eine schnelle Untersuchung und verfassen Sie anschließend einen benutzerdefinierten Zusammenfassungsbericht, der die für Ihre konkrete Geschäftsfrage relevantesten Ergebnisse hervorhebt.

# pip install ydata-profiling
# from ydata_profiling import ProfileReport
# import seaborn as sns

# df = sns.load_dataset('titanic')
# profile = ProfileReport(df, title='Titanic EDA')
# profile.to_file('titanic_eda.html')  # interactive HTML
# profile.to_notebook_iframe()          # inline in Jupyter

# Key sections in the generated report:
# - Overview: shape, missing, duplicates
# - Variables: per-column statistics and plots  
# - Correlations: Pearson, Spearman, Cramers V
# - Missing values: heatmap and dendrogram
# - Duplicates: full list of duplicate rows
print('ydata-profiling generates full EDA reports with one function call.')

Zu vermeidende Anti-Patterns in EDA-Berichten

Häufige Anti-Patterns in EDA-Berichten sind: jedes Diagramm für jede Spalte zu zeigen (dadurch entstehen 50-seitige Berichte, die niemand liest – wählen Sie die 5–10 wichtigsten aus), Fakten ohne Interpretation zu nennen („age hat 177 Nullwerte“ – was soll daraus folgen?), den Bericht nach der Bereinigung nicht zu aktualisieren (bereinigen Sie die Daten und führen Sie anschließend die Profilerstellung erneut aus, um zu bestätigen, dass die Probleme behoben wurden) und Bereinigungscode mit der Analyse zu vermischen (halten Sie die Datenbereinigung von der EDA-Darstellung getrennt).

Kurze Überprüfung

Testen Sie Ihr Verständnis der Erstellung von EDA-Berichten aus dieser Lektion.

Zusammenfassung der Lektion

In dieser Lektion haben Sie gelernt, EDA-Berichte in sechs Abschnitte zu gliedern (Überblick, Qualität, Verteilungen, Korrelationen, Erkenntnisse zu Untergruppen, nächste Schritte), zusammenfassende Abbildungen mit mehreren Teilbereichen und Markdown-Berichte programmgesteuert zu erstellen sowie statistische Ergebnisse in geschäftsrelevante Sprache zu übertragen. Als Nächstes untersuchen wir fortgeschrittene Indexierungstechniken – die Erstellung von MultiIndex und die hierarchische Auswahl in Pandas.

Häufig gestellte Fragen

Ist die Lektion „Ergebnisse in einem Bericht zusammenfassen“ kostenlos?

Ja — der vollständige Text von „Ergebnisse in einem Bericht zusammenfassen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Pandas & NumPy Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Pandas & NumPy Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Ergebnisse in einem Bericht zusammenfassen“?

Fassen Sie zentrale Erkenntnisse in einer strukturierten Markdown-Zusammenfassung mit eingebetteten Verweisen auf Visualisierungen und konkreten nächsten Schritten zusammen. Du übst Pandas & NumPy Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Pandas & NumPy Academy zu starten?

Keine Vorkenntnisse erforderlich. Pandas & NumPy Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Ergebnisse in einem Bericht zusammenfassen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Pandas & NumPy Academy-Lektion Code schreiben und ausführen?

Ja. Jede Pandas & NumPy Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Checkliste zur Datensatzanalyse
  2. Univariate Analyse
  3. Bivariate Analyse und Korrelationsanalyse
  4. Ergebnisse in einem Bericht zusammenfassen
← Zurück zu Pandas & NumPy Academy