Hoe gemiddelden berekenen met pandas mean()
De functie DataFrame.mean() in Python pandas wordt gebruikt om gemiddelden te berekenen over een of meer assen van een DataFrame. Pandas mean() is essentieel voor het analyseren van numerieke gegevens. Naast het berekenen van gemiddelde waarden biedt het ook inzicht in de verdeling van gegevens.
Wat is de syntaxis voor DataFrame.mean()?
De functie pandas mean() accepteert maximaal drie parameters en heeft de volgende syntaxis:
DataFrame.mean(axis=None, skipna=True, numeric_only=None)pythonWelke parameters kunnen worden gebruikt met pandas Dataframe.mean?
Je kunt verschillende parameters gebruiken om de werking van pandas DataFrame.mean() aan te passen.
| Parameter | Beschrijving | Standaardwaarde |
|---|---|---|
axis
|
Geeft aan of de berekening wordt uitgevoerd over rijen (axis=0) of kolommen (axis=1)
|
0
|
skipna
|
Indien ingesteld op True, worden NaN-waarden genegeerd.
|
True
|
numeric_only
|
Als ingesteld op True, worden alleen numerieke gegevenstypen meegenomen in de berekening
|
False
|
Hoe pandas mean() te gebruiken
Je kunt de functie pandas DataFrame.mean() toepassen op zowel kolommen als rijen.
Gemiddelde waarden voor kolommen berekenen
Eerst gaan we een pandas DataFrame maken met wat numerieke gegevens:
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)pythonHet resulterende DataFrame ziet er als volgt uit:
A B C
0 1 4 7
1 2 5 8
2 3 6 9
3 4 7 10Om het gemiddelde van elke kolom te berekenen, kunt u de pandas mean() -functie gebruiken. Standaard is de parameter axis ingesteld op 0, wat overeenkomt met kolommen.
column_means = df.mean()
print(column_means)pythonDe bovenstaande code berekent het gemiddelde voor elke kolom (A, B en C) door de som van de elementen in de betreffende kolom te berekenen en deze vervolgens te delen door het aantal elementen in de kolom. Het resultaat is de volgende pandas-reeks:
A 2.5
B 5.5
C 8.5
dtype: float64Gemiddelde waarden voor rijen berekenen
Als u het gemiddelde voor rijen wilt vinden, stelt u de parameter axis eenvoudigweg in op 1:
row_means = df.mean(axis=1)
print(row_means)pythonPandas mean() berekent rijgemiddelden door de som van de elementen in een rij te delen door het aantal elementen dat deze rij bevat. Als je de bovenstaande functie aanroept, krijg je de volgende uitvoer:
0 4.0
1 5.0
2 6.0
3 7.0
dtype: float64Omgaan met NaN-waarden
In dit voorbeeld gebruiken we een ander DataFrame, dat NaN-waarden bevat:
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)pythonDe bovenstaande code produceert het volgende 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 NaNBij het berekenen van de gemiddelden voor kolommen bepaalt de parameter skipna of NaN-waarden moeten worden meegenomen of genegeerd. Standaard is skipna ingesteld op True, dus df.mean() negeert automatisch NaN-waarden. Als u NaN-waarden wilt meenemen, moet u skipna=False als parameter toevoegen. Hierdoor zal elke kolom met ten minste één NaN-waarde NaN als gemiddelde retourneren.
mean_with_nan = df.mean()
print(mean_with_nan)pythonHet aanroepen van df.mean() levert de volgende uitvoer op:
A 2.333333
B 5.666667
C 8.000000
dtype: float64