Hogyan számoljuk ki az átlagokat a pandas mean() függvénnyel?
A Python pandas DataFrame.mean() funkciója egy vagy több DataFrame tengely átlagának kiszámítására szolgál. A Pandas mean() elengedhetetlen a numerikus adatok elemzéséhez. Az átlagértékek kiszámításán túlmenően betekintést nyújt az adatok eloszlásába is.
Mi a DataFrame.mean() szintaxisa?
A pandas mean() függvény legfeljebb három paramétert fogad el, és a következő szintaxissal rendelkezik:
DataFrame.mean(axis=None, skipna=True, numeric_only=None)pythonMilyen paraméterek használhatók a pandas Dataframe.mean-tel?
Különböző paraméterekkel testreszabhatja a pandas DataFrame.mean() működését.
| Paraméter | Leírás | Alapértelmezett érték |
|---|---|---|
axis
|
Meghatározza, hogy a számítás sorok (axis=0) vagy oszlopok (axis=1) alapján történik-e.
|
0
|
skipna
|
Ha True-re van állítva, a NaN értékek figyelmen kívül maradnak.
|
True
|
numeric_only
|
Ha True van állítva, csak a numerikus adattípusok kerülnek be a számításba.
|
False
|
A pandák használata mean()
A pandas DataFrame.mean() függvényt mind oszlopokra, mind sorokra alkalmazhatja.
Oszlopok átlagértékének kiszámítása
Először létrehozunk egy pandas DataFrame-et néhány numerikus adattal:
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)pythonAz eredményül kapott DataFrame így néz ki:
A B C
0 1 4 7
1 2 5 8
2 3 6 9
3 4 7 10Az egyes oszlopok átlagának kiszámításához használhatja a pandas mean() függvényt. Alapértelmezés szerint az axis paraméter értéke 0, ami az oszlopoknak felel meg.
column_means = df.mean()
print(column_means)pythonA fenti kód kiszámítja az egyes oszlopok (A, B és C) átlagát úgy, hogy megkeresi az adott oszlop elemeinek összegét, majd elosztja azt az oszlop elemeinek számával. Az eredmény a következő pandas sorozat:
A 2.5
B 5.5
C 8.5
dtype: float64Sorok átlagértékének kiszámítása
Ha a sorok átlagát szeretné kiszámítani, egyszerűen állítsa a axis paramétert 1-re:
row_means = df.mean(axis=1)
print(row_means)pythonA Pandas mean() a sorok átlagát úgy számítja ki, hogy a sor elemeinek összegét elosztja az elemek számával. A fenti függvény meghívása a következő eredményt adja:
0 4.0
1 5.0
2 6.0
3 7.0
dtype: float64NaN értékek kezelése
Ebben a példában egy másik DataFrame-et fogunk használni, amely NaN értékeket tartalmaz:
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)pythonA fenti kód a következő DataFrame-et eredményezi:
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 NaNAz oszlopok átlagainak kiszámításakor a skipna paraméter határozza meg, hogy a NaN értékeket be kell-e vonni vagy figyelmen kívül kell-e hagyni. Alapértelmezés szerint skipna értéke True, így df.mean() automatikusan figyelmen kívül hagyja a NaN értékeket. Ha be szeretné vonni a NaN értékeket, akkor hozzá kell adnia skipna=False paramétert. Ezáltal minden olyan oszlop, amelyben legalább egy NaN érték található, NaN értéket ad vissza átlagként.
mean_with_nan = df.mean()
print(mean_with_nan)pythondf.mean() hívása a következő eredményt adja:
A 2.333333
B 5.666667
C 8.000000
dtype: float64