Dados Descritivo da Matéria
Análise de Dados
Professor: Adriano Lauro
Centro universitário Celso Lisboa
Carregamento dos Pacotes
library(readxl)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
vendas <- read_excel("Vendas2024.xlsx", sheet = "Sheet1")
vendas$vendedor <- as.factor(vendas$vendedor)
vendas$venda_diaria <- as.numeric(vendas$venda_diaria)
vendas <- vendas %>%
filter(!is.na(venda_diaria))
str(vendas)
## tibble [113,202 × 5] (S3: tbl_df/tbl/data.frame)
## $ vendedor : Factor w/ 12 levels "101101","101102",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ dias : POSIXct[1:113202], format: "2018-01-01" "2018-01-01" ...
## $ venda_diaria: num [1:113202] 372 139 354 241 123 ...
## $ ano : num [1:113202] 2018 2018 2018 2018 2018 ...
## $ mes : num [1:113202] 1 1 1 1 1 1 1 1 1 1 ...
head(vendas)
## # A tibble: 6 × 5
## vendedor dias venda_diaria ano mes
## <fct> <dttm> <dbl> <dbl> <dbl>
## 1 101101 2018-01-01 00:00:00 372. 2018 1
## 2 101101 2018-01-01 00:00:00 139. 2018 1
## 3 101101 2018-01-01 00:00:00 354. 2018 1
## 4 101101 2018-01-01 00:00:00 241. 2018 1
## 5 101101 2018-01-01 00:00:00 123. 2018 1
## 6 101101 2018-01-01 00:00:00 165. 2018 1
summary(vendas)
## vendedor dias venda_diaria ano
## 101102 :14604 Min. :2018-01-01 00:00:00 Min. : 9.79 Min. :2018
## 101101 :13742 1st Qu.:2020-09-19 00:00:00 1st Qu.:133.27 1st Qu.:2020
## 101103 :12779 Median :2022-02-03 00:00:00 Median :254.06 Median :2022
## 101104 :10493 Mean :2021-11-21 03:43:43 Mean :260.38 Mean :2021
## 101105 :10419 3rd Qu.:2023-03-15 00:00:00 3rd Qu.:373.85 3rd Qu.:2023
## 101106 : 9997 Max. :2024-03-30 00:00:00 Max. :838.42 Max. :2024
## (Other):41168
## mes
## Min. : 1.000
## 1st Qu.: 3.000
## Median : 7.000
## Mean : 6.548
## 3rd Qu.:10.000
## Max. :12.000
##
Análise Estatística
Estatísticas por vendedor
estatisticas_vendedor <- vendas %>%
group_by(vendedor) %>%
summarise( venda_total = sum(venda_diaria), media = mean(venda_diaria), mediana = median(venda_diaria), desvio_padrao = sd(venda_diaria), registros = n() ) %>% arrange(desc(venda_total))
estatisticas_vendedor
## # A tibble: 12 × 6
## vendedor venda_total media mediana desvio_padrao registros
## <fct> <dbl> <dbl> <dbl> <dbl> <int>
## 1 101102 4031176. 276. 268. 161. 14604
## 2 101101 3489519. 254. 249. 146. 13742
## 3 101103 3433923. 269. 265. 155. 12779
## 4 101105 2694622. 259. 251. 150. 10419
## 5 101104 2491491. 237. 232. 138. 10493
## 6 101108 2473665. 271. 265. 157. 9112
## 7 101106 2458056. 246. 241. 143. 9997
## 8 102111 2441308. 245. 241. 141. 9978
## 9 101107 2201441. 250. 243. 147. 8796
## 10 102112 1338667. 290. 283. 167. 4624
## 11 101109 1296194. 304. 298. 174. 4263
## 12 101110 1125154. 256. 252. 146. 4395
Venda mensal total da empresa
venda_mensal_empresa <- vendas %>% group_by(ano, mes) %>% summarise(total_vendas = sum(venda_diaria))
## `summarise()` has regrouped the output.
## ℹ Summaries were computed grouped by ano and mes.
## ℹ Output is grouped by ano.
## ℹ Use `summarise(.groups = "drop_last")` to silence this message.
## ℹ Use `summarise(.by = c(ano, mes))` for per-operation grouping
## (`?dplyr::dplyr_by`) instead.
Venda mensal por vendedor
venda_mensal_vendedor <- vendas %>% group_by(vendedor, ano, mes) %>% summarise(total_vendas = sum(venda_diaria))
## `summarise()` has regrouped the output.
## ℹ Summaries were computed grouped by vendedor, ano, and mes.
## ℹ Output is grouped by vendedor and ano.
## ℹ Use `summarise(.groups = "drop_last")` to silence this message.
## ℹ Use `summarise(.by = c(vendedor, ano, mes))` for per-operation grouping
## (`?dplyr::dplyr_by`) instead.
Visualização dos Dados
Gráfico de barras
ggplot(estatisticas_vendedor,
aes(x = vendedor,
y = venda_total)) +
geom_col()

Tendência das vendas mensais
ggplot(venda_mensal_empresa,
aes(x = mes,
y = total_vendas,
group = 1)) +
geom_line() +
geom_point()

Vendas mensais por vendedor
ggplot(venda_mensal_vendedor,
aes(x = mes,
y = total_vendas)) +
geom_line() +
facet_wrap(~ vendedor,
scales = "free_y")

Histograma das vendas diárias
ggplot(vendas,
aes(x = venda_diaria)) +
geom_histogram(bins = 30)

Boxplot das vendas por mês
ggplot(vendas,
aes(x = factor(mes),
y = venda_diaria)) +
geom_boxplot()

Boxplot das vendas por vendedor
ggplot(vendas,
aes(x = vendedor,
y = venda_diaria)) +
geom_boxplot()

Cálculo do Salário de Março de 2024
O salário foi calculado considerando salário-base, comissão de 5%
sobre as vendas, desconto de 8% referente ao FGTS e desconto de 11%
referente ao INSS.
salario <- read_excel("Salario_base2024.xlsx",
sheet = "Funcionarios")
head(salario)
## # A tibble: 6 × 7
## `Número de Inscrição` Nome Sobrenome Setor Cargo Contrato
## <dbl> <chr> <chr> <chr> <chr> <dttm>
## 1 101101 Nome1 Sobrenome1 Operação Vend… 2018-01-01 00:00:00
## 2 101102 Nome2 Sobrenome2 Operação Vend… 2018-01-02 00:00:00
## 3 201101 Nome14 Sobrenome14 Apoio Aux … 2018-04-01 00:00:00
## 4 301101 Nome18 Sobrenome18 Administra… Aux … 2018-04-01 00:00:00
## 5 101103 Nome3 Sobrenome3 Operação Vend… 2018-08-01 00:00:00
## 6 101104 Nome4 Sobrenome4 Operação Vend… 2019-10-01 00:00:00
## # ℹ 1 more variable: Salario_base <dbl>
Conclusão
A análise permitiu identificar o desempenho dos vendedores e a
evolução das vendas ao longo do período estudado. Os gráficos
facilitaram a visualização dos resultados e auxiliaram na compreensão do
comportamento das vendas. As estatísticas calculadas servem de apoio
para futuras decisões gerenciais e planejamento comercial da
empresa.