Como calcular o desvio padrão por grupo em pandas


Você pode usar os seguintes métodos para calcular o desvio padrão por grupo em pandas:

Método 1: Calcular o desvio padrão de uma coluna agrupada por uma coluna

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

Método 2: Calcular o desvio padrão de múltiplas colunas agrupadas por uma única coluna

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

Método 3: Calcular o desvio padrão de uma coluna agrupada por múltiplas colunas

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

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 o desvio padrão de uma coluna agrupada por uma coluna

O código a seguir mostra como calcular o desvio padrão da coluna de pontos , agrupados por coluna de equipe :

 #calculate standard deviation of points grouped by team
df. groupby (' team ')[' points ']. std ()

team
A 6.70199
B 7.50000
Name: points, dtype: float64

Pelo resultado podemos ver:

  • O desvio padrão dos pontos da Equipe A é 6,70199 .
  • O desvio padrão de pontos para a Equipe B é 7,5 .

Exemplo 2: Calcule o desvio padrão de múltiplas colunas agrupadas por uma única coluna

O código a seguir mostra como calcular o desvio padrão da coluna de pontos e o desvio padrão da coluna de assistências , agrupados pela coluna de equipes :

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

	assist points
team		
A 6.70199 2.061553
B 7.50000 4.787136

O resultado exibe o desvio padrão da coluna de pontos e da coluna de assistências para cada equipe.

Exemplo 3: Calcule o desvio padrão de uma coluna agrupada por múltiplas colunas

O código a seguir mostra como calcular o desvio padrão da coluna de pontos , agrupados por colunas de equipe e posição :

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

team position
AF 2.121320
      G 11.313708
BF 2.121320
      G 5.656854
Name: points, dtype: float64

Pelo resultado podemos ver:

  • O desvio padrão dos pontos dos jogadores da equipe A e da posição F é 2,12 .
  • O desvio padrão dos pontos dos jogadores da equipe A e da posição G é 11,31 .
  • O desvio padrão dos pontos dos jogadores da equipe B e da posição F é 2,12 .
  • O desvio padrão dos pontos dos jogadores da equipe B e da posição G é 5,65 .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns do panda:

Como calcular a média do grupo em pandas
Como calcular o valor máximo por grupo no Pandas
Como calcular o valor por grupo no Pandas
Como calcular quantis por grupo no Pandas

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *