Sådan beregnes gennemsnit med pandas mean()
Funktionen DataFrame.mean() i Python pandas bruges til at beregne gennemsnit på tværs af en eller flere akser i en DataFrame. Pandas mean() er afgørende for analyse af numeriske data. Ud over at beregne gennemsnitsværdier giver den også indsigt i datadistributionen.
Hvad er syntaksen for DataFrame.mean()?
Funktionen pandas mean() accepterer op til tre parametre og har følgende syntaks:
DataFrame.mean(axis=None, skipna=True, numeric_only=None)pythonHvilke parametre kan bruges med pandas Dataframe.mean?
Du kan bruge forskellige parametre til at tilpasse, hvordan pandas DataFrame.mean() fungerer.
| Parameter | Beskrivelse | Standardværdi |
|---|---|---|
axis
|
Angiver, om beregningen skal foretages over rækker (axis=0) eller kolonner (axis=1)
|
0
|
skipna
|
Hvis indstillet til True, ignoreres NaN-værdier.
|
True
|
numeric_only
|
Hvis indstillet til True, vil kun numeriske datatyper blive inkluderet i beregningen.
|
False
|
Sådan bruges pandas mean()
Du kan anvende pandas DataFrame.mean() -funktionen på både kolonner og rækker.
Beregning af gennemsnitsværdier for kolonner
Først skal vi oprette en pandas DataFrame med nogle numeriske data:
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)pythonDen resulterende DataFrame ser således ud:
A B C
0 1 4 7
1 2 5 8
2 3 6 9
3 4 7 10For at beregne gennemsnittet for hver kolonne kan du bruge mean() -funktionen. Som standard er parameteren axis indstillet til 0, hvilket svarer til kolonner.
column_means = df.mean()
print(column_means)pythonOvenstående kode beregner gennemsnittet for hver kolonne (A, B og C) ved at finde summen af elementerne i den respektive kolonne og derefter dividere den med antallet af elementer i kolonnen. Resultatet er følgende pandas-serie:
A 2.5
B 5.5
C 8.5
dtype: float64Beregning af gennemsnitsværdier for rækker
Hvis du vil finde gennemsnittet for rækker, skal du blot indstille parameteren axis til 1:
row_means = df.mean(axis=1)
print(row_means)pythonPandas mean() beregner række gennemsnit ved at dividere summen af elementer i en række med antallet af elementer den har. Ved at kalde ovenstående funktion får man følgende output:
0 4.0
1 5.0
2 6.0
3 7.0
dtype: float64Håndtering af NaN-værdier
I dette eksempel bruger vi en anden DataFrame, der indeholder NaN-værdier:
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)pythonOvenstående kode genererer følgende 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 NaNNår gennemsnittene for kolonner beregnes, bestemmer parameteren skipna, om NaN-værdier skal medtages eller ignoreres. Som standard er skipna indstillet til True, så df.mean() ignorerer automatisk NaN-værdier. Hvis du vil medtage NaN-værdier, skal du tilføje skipna=False som parameter. Hvis du gør det, vil alle kolonner med mindst én NaN returnere NaN som deres gennemsnit.
mean_with_nan = df.mean()
print(mean_with_nan)pythonOpkald til df.mean() giver følgende output:
A 2.333333
B 5.666667
C 8.000000
dtype: float64