Pandas mean(): Mittelwerte ganz unkompliziert berechnen
Die DataFrame.mean()-Funktion in Python Pandas ist dein Werkzeug zur Berechnung des Mittelwerts über verschiedene Achsen eines DataFrames. Mit Pandas mean() analysierst du numerische Daten effizient und erhältst sofort klare Einblicke in deren Verteilung.
Syntax von Pandas DataFrame.mean()
Die Anwendung der Pandas-mean()-Funktion ist unkompliziert und arbeitet mit bis zu drei Parametern:
DataFrame.mean(axis=None, skipna=True, numeric_only=None)pythonRelevante Parameter
Passe Pandas DataFrame.mean() mit diesen Parametern einfach an dein Projekt an:
| Parameter | Beschreibung | Standardwert |
|---|---|---|
axis
|
Legt fest, ob die Berechnung über Zeilen (axis=0) oder Spalten (axis=1) erfolgt.
|
0
|
skipna
|
Bei True werden NaN-Werte in der Analyse ignoriert.
|
True
|
numeric_only
|
Bei True fließen nur numerische Datentypen in das Ergebnis ein.
|
False
|
So nutzt du die Pandas mean()-Funktion
Es gibt verschiedene Wege, wie du Pandas DataFrame.mean() sinnvoll einsetzen kannst.
Mittelwerte für jede Spalte ermitteln
Für die folgenden Beispiele nutzen wir einen Pandas-DataFrame mit diesen Testdaten:
import pandas as pd
data = {
'A': [1, 2, 3, 4],
'B': [4, 5, 6, 7],
'C': [7, 8, 9, 10]
}
df = pd.DataFrame(data)
print(df)pythonDaraus ergibt sich dieser DataFrame:
A B C
0 1 4 7
1 2 5 8
2 3 6 9
3 4 7 10Willst du den Durchschnitt pro Spalte wissen, nutzt du die Pandas-mean()-Funktion einfach mit dem Standardwert axis=0:
column_means = df.mean()
print(column_means)pythonHierbei werden die Werte der Spalten A, B und C summiert und durch die Anzahl der Einträge dividiert. Das Ergebnis erhältst du als Pandas Series:
A 2.5
B 5.5
C 8.5
dtype: float64Durchschnittswerte pro Zeile berechnen
Möchtest du stattdessen den Schnitt für jede Zeile berechnen, setzt du den Parameter axis auf 1:
row_means = df.mean(axis=1)
print(row_means)pythonDurch Pandas mean() wird für jede Zeile die Summe der Elemente durch deren Anzahl geteilt. Der Output sieht dann so aus:
0 4.0
1 5.0
2 6.0
3 7.0
dtype: float64Umgang mit NaN-Werten
In diesem Beispiel arbeiten wir mit einem DataFrame, der fehlende Werte (NaN) enthält:
import pandas as pd
import numpy as np
data = {
'A': [1, 2, np.nan, 4],
'B': [4, np.nan, 6, 7],
'C': [7, 8, 9, np.nan]
}
df = pd.DataFrame(data)
print(df)pythonDaraus entsteht folgender DataFrame:
A B C
0 1.0 4.0 7.0
1 2.0 NaN 8.0
2 NaN 6.0 9.0
3 4.0 7.0 NaNMit dem Parameter skipna steuerst du, wie mit Lücken umgegangen wird. Standardmäßig ist dieser auf True eingestellt, wodurch Pandas mean() diese Werte einfach auslässt. Würdest du hier skipna=False wählen, wäre das Ergebnis für jede Spalte mit einer Lücke ebenfalls NaN.
mean_with_nan = df.mean()
print(mean_with_nan)pythonDas Ergebnis der Abfrage mit Pandas mean() lautet:
A 2.333333
B 5.666667
C 8.000000
dtype: float64