Nesta atividade do curso R: Aplicando Data Visualization com ggplot2, o desafio foi trabalhar com as bases de clientes e vendas da Zoop de forma integrada.
O objetivo foi realizar uma exploração inicial, tratar os dados, criar uma variável com o valor total de cada venda e, por fim, responder à pergunta:
Qual o faturamento das vendas por região do Brasil em 2023?
1. Importação e união das bases
Inicialmente, foram carregadas as bases de vendas e clientes:
url_vendas = "dados/zoop_vendas.csv"
url_clientes = "dados/zoop_clientes.csv"
vendas_desafio <- read_csv(url_vendas, show_col_types = FALSE)
clientes_desafio <- read_csv(url_clientes, show_col_types = FALSE)
Em seguida, as duas bases foram unificadas utilizando o ID_compra como chave:
dados_completos <- merge(
vendas_desafio,
clientes_desafio,
by = "ID_compra"
)
head(dados_completos)
Dessa forma, passamos a trabalhar com um único DataFrame contendo informações de clientes e vendas.
2. Exploração inicial
Antes de realizar as transformações, explorei a estrutura da base:
head(dados_completos)
dim(dados_completos)
glimpse(dados_completos)
Com essa exploração inicial é possível verificar os primeiros registros, o tamanho do dataset e os tipos das variáveis.
3. Tratamento dos dados
O próximo passo foi transformar as variáveis do tipo character (chr) em factor, adequando as variáveis categóricas para as análises:
dados_completos <- dados_completos %>%
mutate(across(where(is.character), as.factor))
Depois da transformação, podemos conferir novamente a estrutura:
glimpse(dados_completos)
4. Criação da coluna total
Para calcular o faturamento, foi necessário criar uma nova variável representando o valor total de cada venda.
A lógica utilizada é:
dados_completos <- dados_completos %>%
mutate(total = quantidade * preco)
Assim, cada registro passa a ter o valor total correspondente àquela venda.
Observação: quantidade e preco devem corresponder aos nomes das respectivas colunas existentes na base fornecida no projeto.
5. Faturamento das vendas por região em 2023
Com os dados tratados, o próximo passo foi filtrar as vendas realizadas em 2023, agrupar os registros por região e calcular o faturamento:
vendas_regiao_2023 <- dados_completos %>%
filter(ano == 2023) %>%
group_by(regiao) %>%
summarise(
faturamento = sum(total, na.rm = TRUE)
)
O resultado pode ser consultado com:
vendas_regiao_2023
6. Visualização com ggplot2
Para facilitar a comparação do faturamento entre as regiões, utilizei um gráfico de barras com o ggplot2:
ggplot(
vendas_regiao_2023,
aes(x = regiao, y = faturamento)
) +
geom_col() +
labs(
title = "Faturamento das vendas por região do Brasil em 2023",
x = "Região",
y = "Faturamento"
)
Nesse caso, utilizei geom_col() porque os valores do faturamento já foram previamente calculados e resumidos por região.
Conclusão
Este exercício permitiu aplicar um fluxo bastante completo de análise de dados em R:
Importação → Integração → Exploração → Tratamento → Transformação → Agregação → Visualização
Além da prática com dplyr e ggplot2, achei particularmente interessante trabalhar com a integração das bases de clientes e vendas, porque isso amplia bastante as possibilidades de análise.
A partir dessa estrutura, podemos ir além do faturamento e investigar questões relacionadas ao perfil dos clientes, comportamento de compra, diferenças regionais e desempenho das vendas.
Mais um passo no aprendizado de R aplicado à Data Science e Data Visualization.