Funktionen DataFrame.mean() i Python pandas används för att beräkna medelvärden över en eller flera axlar i en DataFrame. Pandas mean() är viktigt för att analysera numeriska data. Förutom att beräkna medelvärden ger det också insikter om datadistributionen.

Vad är syntaxen för DataFrame.mean()?

Funktionen pandas mean() accepterar upp till tre parametrar och har följande syntax:

DataFrame.mean(axis=None, skipna=True, numeric_only=None)
python

Vilka parametrar kan användas med pandas Dataframe.mean?

Du kan använda olika parametrar för att anpassa hur pandas DataFrame.mean() fungerar.

Parameter Beskrivning Standardvärde
axis Anger om beräkningen ska göras över rader (axis=0) eller kolumner (axis=1). 0
skipna Om inställt på True ignoreras NaN-värden. True
numeric_only Om inställt på True kommer endast numeriska datatyper att inkluderas i beräkningen. False

Hur man använder pandas mean()

Du kan använda funktionen pandas DataFrame.mean() på både kolumner och rader.

Beräkna medelvärden för kolumner

Först ska vi skapa en pandas DataFrame med några numeriska 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)
python

Den resulterande DataFrame ser ut så här:

A  B    C
0  1  4    7
1  2  5    8
2  3  6    9
3  4  7  10

För att beräkna genomsnittet för varje kolumn kan du använda funktionen pandas mean(). Som standard är parametern axis inställd på 0, vilket motsvarar kolumner.

column_means = df.mean()
print(column_means)
python

Koden ovan beräknar medelvärdet för varje kolumn (A, B och C) genom att ta summan av elementen i respektive kolumn och sedan dividera den med antalet element i kolumnen. Resultatet är följande pandas-serie:

A    2.5
B    5.5
C    8.5
dtype: float64

Beräkning av medelvärden för rader

Om du vill hitta medelvärdet för raderna, ställer du helt enkelt in parametern axis på 1:

row_means = df.mean(axis=1)
print(row_means)
python

Pandas mean() beräknar radgenomsnitt genom att dividera summan av elementen i en rad med antalet element den har. När man anropar funktionen ovan får man följande utdata:

0    4.0
1    5.0
2    6.0
3    7.0
dtype: float64

Hantering av NaN-värden

I det här exemplet använder vi en annan DataFrame som innehåller NaN-värden:

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)
python

Koden ovan genererar följande 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  NaN

När genomsnittet för kolumner beräknas avgör parametern skipna om NaN-värden ska inkluderas eller ignoreras. Som standard är skipna inställt på True, så df.mean() ignorerar automatiskt NaN-värden. Om du vill inkludera NaN-värden måste du lägga till skipna=False som parameter. Om du gör det kommer alla kolumner med minst ett NaN-värde att returnera NaN som sitt medelvärde.

mean_with_nan = df.mean() 
print(mean_with_nan)
python

När man ringer df.mean() får man följande resultat:

A    2.333333
B    5.666667
C    8.000000
dtype: float64
Gå till huvudmeny