O guia completo: como usar a função aggregate() em r
A função Aggregate() em R pode ser usada para calcular estatísticas resumidas para um conjunto de dados.
Esta função usa a seguinte sintaxe básica:
agregado (x, por, FUN)
Ouro:
- x : Uma variável para agregar
- by : Uma lista de variáveis para agrupar por
- DIVERSÃO : A estatística resumida para calcular
Os exemplos a seguir mostram como usar esta função na prática com o seguinte quadro de dados em R:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'), position=c('G', 'G', 'F', 'G', 'F', 'F'), points=c(99, 90, 86, 88, 95, 99), assists=c(33, 28, 31, 39, 34, 23), rebounds=c(30, 28, 24, 24, 28, 33)) #view data frame df team position points assists rebounds 1 AG 99 33 30 2 AG 90 28 28 3 AF 86 31 24 4 BG 88 39 24 5 BF 95 34 28 6 BF 99 23 33
Exemplo 1: Média geral por grupo
O código a seguir mostra como usar a função Aggregate() para calcular o número médio de pontos marcados por equipe:
#find mean points by team
aggregate(df$points, by=list(df$team), FUN=mean)
Group.1 x
1 A 91.66667
2 B 94.00000
Isso nos diz:
- Os jogadores do time A marcaram uma média de 91,67 pontos por jogo.
- Os jogadores do time B marcaram em média 94 pontos por jogo.
Observe que você também pode alterar os nomes das colunas na saída usando a função colnames() :
#find mean points by team agg <- aggregate(df$points, by=list(df$team), FUN=mean) #rename columns in output colnames(agg) <- c(' Team ', ' Mean_Points ') #viewoutput agg Team Mean_Points 1 A 91.66667 2 B 94.00000
Exemplo 2: conta agregada por grupo
O código a seguir mostra como usar a função Aggregate() para contar o número de jogadores por equipe:
#count number of players per team
aggregate(df$points, by=list(df$team), FUN=length)
Group.1 x
1 to 3
2 B 3
Isso nos diz:
- A equipe A é composta por 3 jogadores.
- A equipe B é composta por 3 jogadores.
Exemplo 3: Soma geral por grupo
O código a seguir mostra como usar a função Aggregate() para calcular a soma dos pontos marcados por cada equipe:
#find sum of points scored by team
aggregate(df$points, by=list(df$team), FUN=sum)
Group.1 x
1 to 275
2 B 282
Isso nos diz:
- A equipe A marcou um total de 275 pontos.
- A equipe B marcou um total de 282 pontos.
Exemplo 4: Agregar múltiplas colunas
O código a seguir mostra como usar a função Aggregate() para encontrar a média de pontos marcados, agrupados por equipe e posição:
#find mean of points scored, grouped by team and position
aggregate(df$points, by=list(df$team, df$position), FUN=mean)
Group.1 Group.2 x
1AF 86.0
2 BF 97.0
3 AG 94.5
4 BG 88.0
Isso nos diz:
- Os jogadores na posição “F” do Time A obtiveram média de 86 pontos.
- Os jogadores da posição “F” do Time B marcaram em média 97 pontos.
- Os jogadores da posição “G” do Time A obtiveram média de 94,5 pontos.
- Os jogadores da posição “G” do Time B obtiveram média de 88 pontos.
Recursos adicionais
Os tutoriais a seguir explicam como usar outras funções comuns em R:
Como usar a função table() em R
Como usar a função gsub() em R
Como usar a função summary() em R