Como calcular a média do grupo em pandas (com exemplos)
Você pode usar os seguintes métodos para calcular o valor médio por grupo entre pandas:
Método 1: Calcular a média de uma coluna agrupada por uma coluna
df. groupby ([' group_col '])[' value_col ']. mean ()
Método 2: Calcular a média de múltiplas colunas agrupadas por uma única coluna
df. groupby ([' group_col '])[' value_col1 ', ' value_col2 ']. mean ()
Método 3: Calcular a média de uma coluna agrupada por múltiplas colunas
df. groupby ([' group_col1 ', ' group_col2 '])[' value_col ']. mean ()
Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas:
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
Exemplo 1: Calcule a média de uma coluna agrupada por uma coluna
O código a seguir mostra como calcular o valor médio da coluna de pontos , agrupados por coluna de equipe :
#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
Pelo resultado podemos ver:
- O valor médio de pontos da equipe A é 21,25 .
- O valor médio de pontos da equipe B é 18,25 .
Exemplo 2: Calcule a média de múltiplas colunas agrupadas por uma única coluna
O código a seguir mostra como calcular o valor médio da coluna de pontos e o valor médio da coluna de assistências , agrupados pela coluna de equipe :
#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
A saída exibe o valor médio de pontos e o valor médio de assistência para cada equipe.
Exemplo 3: Calcule a média de uma coluna agrupada por múltiplas colunas
O código a seguir mostra como calcular o valor médio da coluna de pontos , agrupados por colunas de equipe e posição :
#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
Pelo resultado podemos ver:
- O valor médio de pontos dos jogadores da equipe A e da posição F é 20,5 .
- O valor médio de pontos para jogadores da equipe A e da posição G é 22 .
- O valor médio de pontos dos jogadores da equipe B e da posição F é 12,5 .
- O valor médio de pontos para jogadores da equipe B e da posição G é 24 .
Recursos adicionais
Os tutoriais a seguir explicam como executar outras funções comuns em pandas:
Como encontrar o valor máximo por grupo no Pandas
Como encontrar a soma por grupo em pandas
Como calcular quantis por grupo no Pandas