Pandas: calcule a média e padrão de uma coluna em groupby
Você pode usar a seguinte sintaxe para calcular a média e o desvio padrão de uma coluna após usar a operação groupby() no pandas:
df. groupby ([' team '], as_index= False ). agg ({' points ':[' mean ', ' std ']})
Este exemplo específico agrupa as linhas de um DataFrame do pandas pelo valor na coluna Equipe e, em seguida, calcula a média e o desvio padrão dos valores na coluna Pontos .
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: Calcule a média e a norma de uma coluna no Pandas groupby
Suponha que temos o seguinte DataFrame do pandas que contém informações sobre jogadores de basquete de diferentes times:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'], ' points ': [12, 15, 17, 17, 19, 14, 15, 20, 24, 28], ' assists ': [5, 5, 7, 9, 10, 14, 13, 8, 2, 7]}) #view DataFrame print (df) team points assists 0 to 12 5 1 to 15 5 2 To 17 7 3 To 17 9 4 B 19 10 5 B 14 14 6 B 15 13 7 C 20 8 8 C 24 2 9 C 28 7
Podemos utilizar a seguinte sintaxe para calcular a média e o desvio padrão dos valores da coluna de pontos , agrupados pela coluna da equipe :
#calculate mean and standard deviation of points, grouped by team output = df. groupby ([' team '], as_index= False ). agg ({' points ':[' mean ', ' std ']}) #view results print (output) team points mean std 0 A 15.25 2.362908 1 B 16.00 2.645751 2 C 24.00 4.000000
Pelo resultado podemos ver:
- O valor médio de pontos da equipe A é 15,25 .
- O desvio padrão dos pontos da Equipe A é 2,362908 .
E assim por diante.
Também podemos renomear as colunas para que o resultado seja mais fácil de ler:
#rename columns output.output. columns = [' team ', ' points_mean ', ' points_std '] #view updated results print (output) team points_mean points_std 0 A 15.25 2.362908 1 B 16.00 2.645751 2 C 24.00 4.000000
Nota : Você pode encontrar a documentação completa da operação groupby() do pandas aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns em pandas:
Como realizar uma soma GroupBy no Pandas
Como usar Groupby e Plot no Pandas
Como contar valores únicos usando GroupBy no Pandas