Univariate Analyse
Verteilungsdiagramme, Histogramme, Boxplots und Countplots zum Verständnis einzelner Features.
Univariate Analyse ist eine kostenlose Learn AI with Python-Lektion auf CoddyKit. Dies ist Lektion 2 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 Learn AI with Python-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Learn AI with Python-Kurs umfasst insgesamt 4 Lektionen.
Was ist univariate Analyse?
Univariate Analyse untersucht jeweils eine Variable, um ihre Verteilung zu verstehen: Lage, Streuung, Form und ungewöhnliche Werte.
Das passende Diagramm hängt vom Variablentyp ab:
- Numerisch → Histogramm, KDE, Boxplot, Violinplot
- Kategorial → Countplot (Balkendiagramm der Häufigkeiten)
Plot-Bibliotheken einrichten
Wir verwenden Matplotlib (plt) und Seaborn (sns). Seaborn baut auf Matplotlib auf und bietet bessere Standardeinstellungen für statistische Diagramme.
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
sns.set_theme(style="whitegrid")
df = pd.read_csv("data.csv")Histogramme mit plt.hist
Ein Histogramm unterteilt numerische Werte in Intervalle und zählt, wie viele Werte jeweils in ein Intervall fallen. Dadurch wird die allgemeine Form einer Verteilung sichtbar.
Das Argument bins bestimmt die Auflösung – zu wenige Intervalle verbergen Strukturen, zu viele erzeugen Rauschen.
plt.hist(df["age"], bins=30, edgecolor="black")
plt.xlabel("Age")
plt.ylabel("Count")
plt.title("Age Distribution")
plt.show()KDE-Diagramme — Geglättete Dichte
Eine Kerndichteschätzung (sns.kdeplot) zeichnet eine glatte Kurve, die die Verteilung annähert. Sie kann leichter zu lesen sein als die unregelmäßigen Balken eines Histogramms.
Kombinieren Sie beides mit sns.histplot(..., kde=True), um die glatte Kurve über den Balken anzuzeigen.
sns.kdeplot(df["age"], fill=True)
plt.show()
sns.histplot(df["age"], bins=30, kde=True)
plt.show()Schiefe erkennen
Schiefe misst die Asymmetrie. Ein langer Ausläufer nach rechts ist eine Rechtsschiefe (positive Schiefe); ein langer Ausläufer nach links eine Linksschiefe (negative Schiefe).
Einkommen, Preise und Anzahlen sind normalerweise rechtsschief. Sie können die Schiefe mit df[col].skew() quantifizieren – Werte, die deutlich von 0 abweichen, weisen auf Schiefe hin.
print(df["income"].skew()) # e.g. 2.3 -> strong right skew
sns.histplot(df["income"], bins=40, kde=True)
plt.show()Bimodalität erkennen
Eine bimodale Verteilung hat zwei Spitzen. Das deutet oft darauf hin, dass zwei unterschiedliche Gruppen vermischt sind (z. B. zwei Produkttypen in einer Preisspalte).
KDE-Diagramme machen Bimodalität deutlich sichtbar – achten Sie auf zwei Erhebungen. Das ist ein Hinweis darauf, dass eine verborgene kategoriale Variable die Aufteilung erklären könnte.
sns.kdeplot(df["price"], fill=True)
plt.title("Two peaks suggest two subpopulations")
plt.show()Boxplots mit sns.boxplot
Ein Boxplot zeigt den Median (mittlere Linie), den Interquartilsabstand (IQR, die Box) und Whisker, die sich bis etwa zum 1,5-Fachen des IQR erstrecken. Punkte außerhalb der Whisker werden als Ausreißer markiert.
sns.boxplot(x=df["income"])
plt.title("Income — box plot")
plt.show()Ausreißer und die IQR-Regel
Der Boxplot verwendet die IQR-Regel: Ein Punkt ist ein Ausreißer, wenn er unter Q1 - 1.5*IQR oder über Q3 + 1.5*IQR liegt.
Sie können die Grenzen selbst berechnen, um extreme Werte herauszufiltern oder zu begrenzen.
q1 = df["income"].quantile(0.25)
q3 = df["income"].quantile(0.75)
iqr = q3 - q1
low, high = q1 - 1.5*iqr, q3 + 1.5*iqr
outliers = df[(df["income"] < low) | (df["income"] > high)]
print(len(outliers), "outliers")Violinplots mit sns.violinplot
Ein Violinplot kombiniert einen Boxplot mit einer gespiegelten KDE. Die Breite auf jeder Höhe zeigt die Dichte, sodass Sie gleichzeitig die Form und zusammenfassende statistische Kennzahlen sehen.
Violinplots eignen sich hervorragend, um Schiefe oder Bimodalität sichtbar zu machen, die ein einfacher Boxplot verbergen würde.
sns.violinplot(x=df["age"])
plt.title("Age — violin plot")
plt.show()Countplots für kategoriale Variablen
Für kategoriale Spalten verwenden Sie sns.countplot – ein Balkendiagramm der Kategoriehäufigkeiten. Es ist die visuelle Darstellung von value_counts().
Ordnen Sie die Balken mit dem Argument order nach Häufigkeit, um die Lesbarkeit zu verbessern.
order = df["city"].value_counts().index
sns.countplot(y="city", data=df, order=order)
plt.title("Records per city")
plt.show()Das richtige univariate Diagramm auswählen
Schnelle Entscheidungshilfe:
- Form einer numerischen Spalte → Histogramm oder KDE
- Ausreißer und Quartile → Boxplot
- Form und Zusammenfassung gemeinsam → Violinplot
- Kategoriehäufigkeiten → Countplot
Schnelltest: Diagrammauswahl
Sie möchten Median, Quartile und Ausreißer einer einzelnen numerischen Spalte sehen.
Zusammenfassung: Univariate Analyse
Sie haben gelernt, jeweils eine Variable zu untersuchen:
plt.histundsns.kdeplotfür die Form einer Verteilung.skew()zur Quantifizierung der Asymmetrie; KDE-Erhebungen zum Erkennen von Bimodalitätsns.boxplotund die IQR-Regel für Ausreißersns.violinplotfür Form und Zusammenfassung gemeinsamsns.countplotfür kategoriale Häufigkeiten
Als Nächstes betrachten wir Beziehungen zwischen zwei oder mehr Variablen.
Häufig gestellte Fragen
Ist die Lektion „Univariate Analyse“ kostenlos?
Ja — der vollständige Text von „Univariate Analyse“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Learn AI with Python-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Learn AI with Python-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Univariate Analyse“?
Verteilungsdiagramme, Histogramme, Boxplots und Countplots zum Verständnis einzelner Features. Du übst Learn AI with Python 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 Learn AI with Python zu starten?
Keine Vorkenntnisse erforderlich. Learn AI with Python 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 2 von 4.
Wie lange dauert die Lektion „Univariate Analyse“?
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 Learn AI with Python-Lektion Code schreiben und ausführen?
Ja. Jede Learn AI with Python-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
- EDA-Workflow und Datenprofiling
- Univariate Analyse
- Bivariate und multivariate Analyse
- Feature-Verteilung und Zielvariable analysieren