R

Como Agrupar e Agregar Dados no R com dplyr

Escrito por Erick Faria · 3 min. >
Agrupar e Agregar Dados no R

Neste post, vamos explorar como agrupar e agregar dados em DataFrames no R utilizando o pacote dplyr. Agrupamento e agregação são operações essenciais para sumarizar e analisar dados de forma eficiente. Vamos criar um DataFrame de exemplo e abordar várias técnicas para agrupar e agregar dados.

Por que Usar dplyr para Agrupar e Agregar Dados no R?

O pacote dplyr oferece funções poderosas e intuitivas para manipulação de dados, incluindo operações de agrupamento e agregação. Com funções como group_by e summarize, podemos calcular estatísticas resumidas, como médias, somas e contagens, de forma rápida e eficiente.

Trabalhando com Dados no R

Criando um DataFrame de Exemplo

Vamos começar criando um DataFrame com alguns dados de exemplo:

# Agrupar e Agregar Dados no R
# Carregando o pacote necessário
library(dplyr)

# Criando um DataFrame de exemplo
data <- data.frame(
  Nome = c('João', 'Ana', 'Carlos', 'Marta', 'Pedro', 'João', 'Ana', 'Carlos', 'Marta', 'Pedro'),
  Idade = c(23, 45, 35, 41, 29, 23, 45, 35, 41, 29),
  Cidade = c('São Paulo', 'Rio de Janeiro', 'Belo Horizonte', 'Salvador', 'São Paulo', 
             'Rio de Janeiro', 'Belo Horizonte', 'Salvador', 'São Paulo', 'Rio de Janeiro'),
  Salario = c(5000, 7000, 8000, 6200, 5400, 5000, 7000, 8000, 6200, 5400)
)

Como Agrupar Dados no R

Agrupando Dados com group_by

Podemos usar a função group_by para agrupar dados por uma ou mais variáveis:

# Agrupar e Agregar Dados no R
# Agrupando dados por Cidade
data_grouped <- data %>%
  group_by(Cidade)

Como Agregar Dados no R

Calculando a Média

Podemos usar a função summarize junto com group_by para calcular a média de uma coluna:

# Agrupar e Agregar Dados no R
# Calculando a média de salário por cidade
media_salario <- data_grouped %>%
  summarize(Media_Salario = mean(Salario))

Calculando a Soma

Para calcular a soma de uma coluna, usamos summarize e group_by da mesma maneira:

# Agrupar e Agregar Dados no R
# Calculando a soma de salários por cidade
soma_salario <- data_grouped %>%
  summarize(Soma_Salario = sum(Salario))

Contando Ocorrências

Podemos contar o número de ocorrências em cada grupo usando a função n():

# Agrupar e Agregar Dados no R
# Contando o número de pessoas por cidade
contagem_pessoas <- data_grouped %>%
  summarize(Numero_Pessoas = n())

Outras Operações de Agregação

Calculando Mínimo e Máximo

Podemos calcular o valor mínimo e máximo de uma coluna:

# Agrupar e Agregar Dados no R
# Calculando o salário mínimo e máximo por cidade
min_max_salario <- data_grouped %>%
  summarize(Min_Salario = min(Salario), Max_Salario = max(Salario))

Calculando Desvio Padrão

Podemos calcular o desvio padrão de uma coluna:

# Agrupar e Agregar Dados no R
# Calculando o desvio padrão de salário por cidade
desvio_padrao_salario <- data_grouped %>%
  summarize(Desvio_Padrao_Salario = sd(Salario))

Agrupando por Múltiplas Variáveis

Agrupando por Cidade e Nome

Podemos agrupar por múltiplas variáveis para calcular estatísticas mais detalhadas:

# Agrupando por Cidade e Nome
data_grouped_multi <- data %>%
  group_by(Cidade, Nome)

# Calculando a média de salário por cidade e nome
media_salario_multi <- data_grouped_multi %>%
  summarize(Media_Salario = mean(Salario))

Filtrando Dados Agrupados

Filtrando Grupos Específicos

Podemos filtrar dados agrupados para manter apenas grupos específicos:

# Filtrando para manter apenas cidades com média de salário acima de 6000
cidades_altos_salarios <- media_salario %>%
  filter(Media_Salario > 6000)

Visualizando Dados Agrupados

Criando Gráficos com ggplot2

Visualizar dados agrupados pode ajudar a identificar padrões e tendências. Vamos criar um gráfico de barras mostrando a média de salários por cidade:

library(ggplot2)

# Criando um gráfico de barras da média de salários por cidade
ggplot(media_salario, aes(x = Cidade, y = Media_Salario)) +
  geom_bar(stat = "identity") +
  ggtitle('Média de Salários por Cidade')

Para mais informações sobre como utilizar o R para análise de dados, confira outros conteúdos no meu blog:

Considerações Finais

Espero que este guia tenha sido útil para aprender como agrupar e agregar dados com o pacote dplyr no R. A prática é essencial para dominar essas técnicas, então encorajo você a experimentar e aplicar esses métodos em seus próprios projetos de análise de dados.

Para aprimorar suas habilidades com o R e se tornar mais eficiente na manipulação de dados, é importante também fortalecer sua compreensão em ciência de dados. Recomendamos o livro Fundamentos em R: Guia Completo para Iniciantes, disponível na Amazon, que oferece uma introdução abrangente ao R.

Junte-se à nossa comunidade no Twitter e inscreva-se no nosso canal do YouTube para acessar mais tutoriais, dicas e recursos. Continue praticando e explorando novas maneiras de agrupar e agregar dados no R, e fique atento para mais guias e tutoriais que compartilharemos.

Escrito por Erick Faria
Engenheiro de Dados com Ph.D. em Geografia e experiência em análise espacial e geoprocessamento. Expertise em processamento de grandes volumes de dados geoespaciais, imagens de satélite e dados de mercado, utilizando ferramentas como Spark, Databricks e Google Earth Engine. Experiência em projetos de mercado de carbono, modelos preditivos para investimentos agrícolas e liderança de projetos de dados em saúde pública. Habilidades em Python, R, SQL e diversas ferramentas de engenharia de dados. Profile