Pandas DataFrame describe() im Überblick

Die Python-Pandas-Funktion DataFrame describe() dient dazu, eine statistische Zusammenfassung der numerischen Spalten eines DataFrames zu erstellen. Diese Zusammenfassung enthält wichtige statistische Kennziffern wie Mittelwert, Standardabweichung, Minimum, Maximum und verschiedene Quantile der Daten.

Webhosting
Top-Hosting für Ihre Website
  • Flexibel: Hosting, das jedem Website-Traffic standhält
  • Verlässlich: Inklusive 24/7-Support und persönlicher Beratung
  • Sicher: Kostenloses SSL-Zertifikat, DDoS-Schutz und Backups

Syntax der Pandas-describe()-Funktion

Die grundlegende Syntax der Pandas-describe()-Funktion für einen DataFrame ist wenig kompliziert und sieht wie folgt aus:

DataFrame.describe(percentiles=None, include=None, exclude=None)
python

Relevante Parameter von Pandas DataFrame.describe()

Mithilfe einiger Parameter können Sie Anpassungen an der Ausgabe der describe()-Funktion vornehmen. Diese Parameter lauten:

Parameter Beschreibung Standardwert
percentiles Listet die gewünschten Quantile auf, die in der Beschreibung enthalten sein sollen [.25, .5, .75]
include Bestimmt, welche Datentypen in die Beschreibung einbezogen werden sollen; mögliche Werte sind numpy.number, numpy.object, all oder None None
exclude Bestimmt, welche Datentypen von der Beschreibung ausgeschlossen werden sollen; Werte analog zu include None
Definition

Statistische Quantile sind Werte, die eine geordnete Datenmenge in gleich große Abschnitte teilen und anzeigen, welcher Prozentsatz der Datenpunkte unterhalb dieses Schwellenwertes liegt. Sie dienen dazu, die Verteilung der Daten zu verstehen, und können z. B. den Median (50. Perzentil), das 25. und 75. Perzentil umfassen.

Anwendungsbeispiele von Pandas describe()

Die Pandas-Funktion DataFrame.describe() wird vor allem dann genutzt, wenn ein schneller Überblick über die wichtigsten statistischen Kennziffern eines Datensatzes gewünscht ist.

Beispiel 1: Statistische Zusammenfassung numerischer Daten

Im folgenden Beispiel wird der Dataframe df betrachtet, der eine Reihe verschiedener Verkaufsdaten enthält.

import pandas as pd
import numpy as np
data = {
    'Product': ['A', 'B', 'C', 'D', 'E'],
    'Quantity': [10, 20, 15, 5, 30],
    'Price': [100, 150, 200, 80, 120],
    'Revenue': [1000, 3000, 3000, 400, 3600]
}
df = pd.DataFrame(data)
print(df)
python

Man kann nun Pandas describe() verwenden, um eine statistische Zusammenfassung der numerischen Spalten zu erhalten:

summary = df.describe()
print(summary)
python

Der Funktionsaufruf von Pandas DataFrame.describe() liefert folgenden Output:

Quantity       Price      Revenue
count   5.000000    5.000000     5.000000
mean   16.000000  130.000000  2200.000000
std     9.617692   46.904158  1407.124728
min     5.000000   80.000000   400.000000
25%    10.000000  100.000000  1000.000000
50%    15.000000  120.000000  3000.000000
75%    20.000000  150.000000  3000.000000
max    30.000000  200.000000  3600.000000```

Dabei haben die ausgegebenen Kennziffern folgende Bedeutung:

  • count: Anzahl der Nicht-NaN-Einträge
  • mean: Durchschnitt der Werte (auch mit DataFrame.mean() einsehbar)
  • std: Standardabweichung der Werte
  • min, 25%, 50%, 75%, max: Minimum, 25. Perzentil, Median (50. Perzentil), 75. Perzentil, Maximum der Werte

Beispiel 2: Anpassen der Quantile

Man kann Pandas DataFrame.describe()mit den bereits beschriebenen Parametern anpassen, um spezifische Quantile zu berücksichtigen:

# Statistische Zusammenfassung mit angepassten Quantilen
custom_summary = df.describe(percentiles=[0.1, 0.5, 0.9])
print(custom_summary)
python

Der Funktionsaufruf liefert folgenden Output und berücksichtigt dabei die gewählten Quantile 10%, 50% (Median) und 90%:

Quantity       Price      Revenue
count   5.000000    5.000000     5.000000
mean   16.000000  130.000000  2200.000000
std     9.617692   46.904158  1407.124728
min     5.000000   80.000000   400.000000
10%     7.000000   88.000000   640.000000
50%    15.000000  120.000000  3000.000000
90%    26.000000  180.000000  3360.000000
max    30.000000  200.000000  3600.000000
War dieser Artikel hilfreich?
Page top