Jak obliczyć średnią grupową w pandach (z przykładami)


Możesz użyć następujących metod, aby obliczyć średnią wartość na grupę wśród pand:

Metoda 1: Oblicz średnią kolumnę pogrupowaną według kolumn

 df. groupby ([' group_col '])[' value_col ']. mean ()

Metoda 2: Oblicz średnią z wielu kolumn zgrupowanych w jednej kolumnie

 df. groupby ([' group_col '])[' value_col1 ', ' value_col2 ']. mean ()

Metoda 3: Oblicz średnią kolumnę pogrupowaną według wielu kolumn

 df. groupby ([' group_col1 ', ' group_col2 '])[' value_col ']. mean ()

Poniższe przykłady pokazują, jak w praktyce używać każdej metody z następującą ramką DataFrame pand:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' position ': ['G', 'F', 'F', 'G', 'F', 'F', 'G', 'G'],
                   ' points ': [30, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [4, 3, 7, 7, 12, 15, 8, 4]})

#view DataFrame
print (df)

  team position points assists
0 AG 30 4
1 AF 22 3
2 FY 19 7
3 AG 14 7
4 BF 14 12
5 BF 11 15
6 BG 20 8
7 BG 28 4

Przykład 1: Oblicz średnią kolumnę pogrupowaną według kolumn

Poniższy kod pokazuje, jak obliczyć średnią wartość kolumny punktów , pogrupowaną według kolumny zespołu :

 #calculate mean of points grouped by team
df. groupby (' team ')[' points ']. mean ()

team
At 9:25 p.m.
B 18.25
Name: points, dtype: float64

Z wyniku możemy zobaczyć:

  • Średnia wartość punktowa drużyny A wynosi 21,25 .
  • Średnia wartość punktowa drużyny B wynosi 18,25 .

Przykład 2: Oblicz średnią z wielu kolumn zgrupowanych w jednej kolumnie

Poniższy kod pokazuje, jak obliczyć średnią wartość kolumny punktów i średnią wartość kolumny asyst , pogrupowanych według kolumny zespołu :

 #calculate mean of points and mean of assists grouped by team
df. groupby (' team ')[[' points ', ' assists ']]. mean ()

       assist points
team		
At 21.25 5.25
B 18.25 9.75

Dane wyjściowe wyświetlają średnią wartość punktów i średnią wartość asyst dla każdego zespołu.

Przykład 3: Oblicz średnią kolumnę pogrupowaną według wielu kolumn

Poniższy kod pokazuje, jak obliczyć średnią wartość kolumny punktów , pogrupowanych według kolumn zespołu i pozycji :

 #calculate mean of points, grouped by team and position
df. groupby ([' team ', ' position '])[' points ']. mean ()

team position
FY 20.5
      G 22.0
BF 12.5
      G 24.0
Name: points, dtype: float64

Z wyniku możemy zobaczyć:

  • Średnia wartość punktowa zawodników drużyny A i pozycji F wynosi 20,5 .
  • Średnia wartość punktowa zawodników drużyny A i pozycji G wynosi 22 .
  • Średnia wartość punktowa zawodników drużyny B i pozycji F wynosi 12,5 .
  • Średnia wartość punktowa zawodników drużyny B i pozycji G wynosi 24 .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe funkcje w pandach:

Jak znaleźć maksymalną wartość na grupę w Pandas
Jak znaleźć sumę na grupę w pandach
Jak obliczyć kwantyle według grupy w Pandach

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *