Como calcular estatísticas resumidas em r usando dplyr


Você pode usar a seguinte sintaxe para calcular estatísticas resumidas para todas as variáveis numéricas em um quadro de dados em R usando funções do pacote dplyr :

 library (dplyr)
library (tidyr)

df %>% summarise(across(where(is. numeric ), .fns = 
                     list(min = min,
                          median = median,
                          mean = mean,
                          stdev = sd,
                          q25 = ~quantile(., 0.25 ),
                          q75 = ~quantile(., 0.75 ),
                          max = max))) %>%
  pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))

A função summarise() vem do pacote dplyr e é usada para calcular estatísticas resumidas para variáveis.

A função pivot_longer() vem do pacote Tidyr e é usada para formatar a saída para facilitar a leitura.

Esta sintaxe específica calcula as seguintes estatísticas resumidas para cada variável numérica em um quadro de dados:

  • Valor mínimo
  • Valor mediano
  • Valor médio
  • Desvio padrão
  • 25º percentil
  • 75º percentil
  • Valor máximo

O exemplo a seguir mostra como usar esta função na prática.

Exemplo: calcular estatísticas resumidas em R usando dplyr

Suponha que temos o seguinte quadro de dados em R que contém informações sobre vários jogadores de basquete:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(12, 15, 19, 14, 24, 25, 39, 34),
                 assists=c(6, 8, 8, 9, 12, 6, 8, 10),
                 rebounds=c(9, 9, 8, 10, 8, 4, 3, 3))

#view data frame
df

  team points assists rebounds
1 to 12 6 9
2 A 15 8 9
3 A 19 8 8
4 A 14 9 10
5 B 24 12 8
6 B 25 6 4
7 B 39 8 3
8 B 34 10 3

Podemos usar a seguinte sintaxe para calcular estatísticas resumidas para cada variável numérica no quadro de dados:

 library (dplyr)
library (tidyr)

#calculate summary statistics for each numeric variable in data frame
df %>% summarise(across(where(is. numeric ), .fns = 
                     list(min = min,
                          median = median,
                          mean = mean,
                          stdev = sd,
                          q25 = ~quantile(., 0.25 ),
                          q75 = ~quantile(., 0.75 ),
                          max = max))) %>%
  pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))

# A tibble: 3 x 8
  variable min median mean stdev q25 q75 max
             
1 points 12 21.5 22.8 9.74 14.8 27.2 39
2 assists 6 8 8.38 2.00 7.5 9.25 12
3 rebounds 3 8 6.75 2.92 3.75 9 10

  Pelo resultado podemos ver:

  • O valor mínimo na coluna de pontos é 12 .
  • O valor mediano na coluna de pontos é 21,5 .
  • O valor médio na coluna de pontos é 22,8 .

E assim por diante.

Nota : Neste exemplo, usamos a função dplyr across() . Você pode encontrar a documentação completa para esta função aqui .

Recursos adicionais

Os tutoriais a seguir explicam como executar outras funções comuns usando dplyr:

Como resumir os dados, mas manter todas as colunas usando dplyr
Como resumir múltiplas colunas usando dplyr
Como calcular o desvio padrão usando dplyr

Add a Comment

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