Projeto da Fase 3 - Análise Estatística de Dados e Visualização - Victor Hugo Prof. Adriano Projeto de Análise de Dados Programador: Victor Hugo Guedes Instituição: Centro Universitário Celso Lisboa

Carregamento de Bibliotecas

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)
library(readxl)
library(readr)
library(lubridate)
## 
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
## 
##     date, intersect, setdiff, union
library(knitr)
library(kableExtra)
## 
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
eval = FALSE 

Introdução

Este relatorio apresenta uma análise exploratória dos dados de vendas da empresa Bar da Dorinha. O objetivo é analisar o desempenho dos vendedores, identificar padrões de vendas e calcular a folha de pagamento referente ao mês de março de 2024.

Importando a planilha

Importamos as Planilhas do Liga: Salario Base e Vendas 2024

vendas <- read_excel("Vendas2024.xlsx")
names(vendas)
## [1] "vendedor"     "dias"         "venda_diaria" "ano"          "mes"
salarios <- read_excel("Salario_base2024.xlsx")
names(salarios)
## [1] "Número de Inscrição" "Nome"                "Sobrenome"          
## [4] "Setor"               "Cargo"               "Contrato"           
## [7] "Salario_base"

Estrutura dos Dados

str(vendas)
## tibble [113,202 × 5] (S3: tbl_df/tbl/data.frame)
##  $ vendedor    : num [1:113202] 101101 101101 101101 101101 101101 ...
##  $ 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
##      <dbl> <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      
##  Min.   :101101   Min.   :2018-01-01 00:00:00   Min.   :  9.79   Min.   :2018  
##  1st Qu.:101102   1st Qu.:2020-09-19 00:00:00   1st Qu.:133.27   1st Qu.:2020  
##  Median :101105   Median :2022-02-03 00:00:00   Median :254.06   Median :2022  
##  Mean   :101234   Mean   :2021-11-21 03:43:43   Mean   :260.38   Mean   :2021  
##  3rd Qu.:101108   3rd Qu.:2023-03-15 00:00:00   3rd Qu.:373.85   3rd Qu.:2023  
##  Max.   :102112   Max.   :2024-03-30 00:00:00   Max.   :838.42   Max.   :2024  
##       mes        
##  Min.   : 1.000  
##  1st Qu.: 3.000  
##  Median : 7.000  
##  Mean   : 6.548  
##  3rd Qu.:10.000  
##  Max.   :12.000

Tratamento dos Dados

vendas <- vendas %>%

  mutate(

    vendedor = as.factor(vendedor),

    venda_diaria = as.numeric(venda_diaria)

  ) %>%

  filter(!is.na(venda_diaria))

2. Análise Estatística

Estatísticas por Vendedor

estatisticas_vendedor <- vendas %>%

  group_by(vendedor) %>%

  summarise(

    Venda_Total = sum(venda_diaria),

    Media_Diaria = mean(venda_diaria),

    Mediana_Diaria = median(venda_diaria),

    Desvio_Padrao = sd(venda_diaria),

    Quantidade_Registros = n()

  ) %>%

  arrange(desc(Venda_Total))

estatisticas_vendedor %>%

  kable(digits = 2)
vendedor Venda_Total Media_Diaria Mediana_Diaria Desvio_Padrao Quantidade_Registros
101102 4031176 276.03 268.37 160.76 14604
101101 3489519 253.93 249.28 146.27 13742
101103 3433923 268.72 264.70 155.34 12779
101105 2694622 258.63 250.79 150.14 10419
101104 2491491 237.44 232.13 137.85 10493
101108 2473665 271.47 265.24 157.04 9112
101106 2458056 245.88 240.99 143.15 9997
102111 2441308 244.67 240.99 140.90 9978
101107 2201441 250.28 243.28 146.59 8796
102112 1338667 289.50 282.73 166.85 4624
101109 1296194 304.06 297.62 173.87 4263
101110 1125154 256.01 252.31 145.72 4395

Análise

Foi observado que existem diferenças significativas entre os vendedores. Os profissionais com maiores vendas totais também tendem a apresentar maiores médias diárias, indicando desempenho consistente ao longo do período analisado.

Vendas Mensais Totais

vendas_mensais <- vendas %>%

  group_by(mes) %>%

  summarise(Total_Vendas = sum(venda_diaria))

vendas_mensais %>%

  kable(digits = 2)
mes Total_Vendas
1 2386425
2 1997638
3 2465693
4 2164830
5 2661291
6 2439277
7 2057659
8 2091707
9 2109516
10 2511229
11 3013742
12 3576212

Vendas Mensais por Vendedor

vendas_mensais_vendedor <- vendas %>%

  group_by(vendedor, mes) %>%

  summarise(

    Total_Vendas_Mensais = sum(venda_diaria),

    .groups = "drop"

  )

vendas_mensais_vendedor %>%

  kable(digits = 2)
vendedor mes Total_Vendas_Mensais
101101 1 304996.55
101101 2 280841.29
101101 3 271108.23
101101 4 312580.18
101101 5 332379.50
101101 6 273624.83
101101 7 244295.36
101101 8 241060.96
101101 9 235423.53
101101 10 272452.76
101101 11 353683.41
101101 12 367072.11
101102 1 358325.87
101102 2 258428.16
101102 3 350061.41
101102 4 316714.02
101102 5 303263.64
101102 6 351696.00
101102 7 290731.31
101102 8 293787.95
101102 9 313033.75
101102 10 328450.46
101102 11 354579.10
101102 12 512104.04
101103 1 256950.60
101103 2 227085.20
101103 3 261548.28
101103 4 264556.80
101103 5 290407.44
101103 6 253482.21
101103 7 219043.61
101103 8 289967.85
101103 9 281298.37
101103 10 296370.12
101103 11 376967.19
101103 12 416245.38
101104 1 222662.16
101104 2 155017.30
101104 3 217127.72
101104 4 154917.52
101104 5 229778.76
101104 6 210482.34
101104 7 153517.12
101104 8 144273.45
101104 9 154356.88
101104 10 230839.02
101104 11 292080.27
101104 12 326438.93
101105 1 243601.59
101105 2 181129.39
101105 3 230925.68
101105 4 217487.04
101105 5 210134.02
101105 6 211313.24
101105 7 198280.47
101105 8 178660.18
101105 9 182837.38
101105 10 219010.56
101105 11 281821.85
101105 12 339420.87
101106 1 190747.81
101106 2 186249.53
101106 3 211870.26
101106 4 187609.33
101106 5 248299.20
101106 6 178133.89
101106 7 138348.33
101106 8 163860.42
101106 9 178171.05
101106 10 203824.08
101106 11 270247.30
101106 12 300695.05
101107 1 131991.95
101107 2 148701.20
101107 3 205178.07
101107 4 186903.56
101107 5 216176.32
101107 6 193094.22
101107 7 159875.93
101107 8 174730.10
101107 9 154164.84
101107 10 190023.95
101107 11 190755.82
101107 12 249844.79
101108 1 144378.98
101108 2 147176.34
101108 3 225444.00
101108 4 203459.68
101108 5 256836.88
101108 6 212237.53
101108 7 191760.85
101108 8 169119.74
101108 9 194768.33
101108 10 193896.73
101108 11 240693.66
101108 12 293892.62
101109 1 130292.65
101109 2 89180.06
101109 3 86114.55
101109 4 56328.50
101109 5 96427.52
101109 6 133369.88
101109 7 94089.19
101109 8 101625.88
101109 9 80056.90
101109 10 131671.38
101109 11 145915.46
101109 12 151122.44
101110 1 102221.04
101110 2 71676.60
101110 3 78463.27
101110 4 49210.58
101110 5 103094.09
101110 6 111804.99
101110 7 97608.66
101110 8 95514.34
101110 9 81701.94
101110 10 103513.47
101110 11 120435.98
101110 12 109909.32
102111 1 214266.61
102111 2 160480.82
102111 3 205464.53
102111 4 154996.70
102111 5 237483.46
102111 6 195677.70
102111 7 166520.44
102111 8 128257.65
102111 9 163233.04
102111 10 224139.70
102111 11 262223.83
102111 12 328563.49
102112 1 85988.78
102112 2 91672.44
102112 3 122386.60
102112 4 60065.69
102112 5 137010.19
102112 6 114360.31
102112 7 103587.34
102112 8 110848.82
102112 9 90469.73
102112 10 117036.86
102112 11 124337.65
102112 12 180902.99

3. Visualização dos Dados

Gráfico de Barras - Venda Total por Vendedor

ggplot(estatisticas_vendedor,

       aes(x = reorder(vendedor, Venda_Total),

           y = Venda_Total)) +

  geom_col() +

  coord_flip() +

  labs(

    title = "Venda Total por Vendedor",

    x = "Vendedor",

    y = "Total de Vendas"

  )

Tendência Geral das Vendas Mensais

ggplot(vendas_mensais,

       aes(x = mes,

           y = Total_Vendas,

           group = 1)) +

  geom_line() +

  geom_point() +

  labs(

    title = "Tendência das Vendas Mensais",

    x = "Mês",

    y = "Total de Vendas"

  )

Vendas Mensais por Vendedor

ggplot(vendas_mensais_vendedor,

       aes(x = mes,

           y = Total_Vendas_Mensais)) +

  geom_line() +

  geom_point() +

  facet_wrap(~ vendedor,

             scales = "free_y") +

  labs(

    title = "Vendas Mensais por Vendedor",

    x = "Mês",

    y = "Total de Vendas"

  )

Histograma das Vendas Diárias

ggplot(vendas,

       aes(x = venda_diaria)) +

  geom_histogram(bins = 20) +

  labs(

    title = "Distribuição das Vendas Diárias",

    x = "Venda Diária",

    y = "Frequência"

  )

Boxplot por Mês

ggplot(vendas,

       aes(x = factor(mes),

           y = venda_diaria)) +

  geom_boxplot() +

  labs(

    title = "Vendas Diárias por Mês",

    x = "Mês",

    y = "Venda Diária"

  )

Boxplot por Vendedor

ggplot(vendas,

       aes(x = vendedor,

           y = venda_diaria)) +

  geom_boxplot() +

  labs(

    title = "Distribuição das Vendas por Vendedor",

    x = "Vendedor",

    y = "Venda Diária"

  )

4. Folha de Pagamento - Março de 2024

vendas_marco <- vendas %>%

  filter(mes == 3)
comissao_marco <- vendas_marco %>%

  group_by(vendedor) %>%

  summarise(

    vendas_marco = sum(venda_diaria),

    comissao = vendas_marco * 0.05

  )

Verificar nomes das colunas

colnames(salarios)
## [1] "Número de Inscrição" "Nome"                "Sobrenome"          
## [4] "Setor"               "Cargo"               "Contrato"           
## [7] "Salario_base"

Comissão de março

comissao_marco <- vendas %>%
  filter(mes == 3) %>%
  group_by(vendedor) %>%
  summarise(
    vendas_marco = sum(venda_diaria),
    comissao = vendas_marco * 0.05,
    .groups = "drop"
  )

Renomeando para permitir o join

salarios <- salarios %>%
  rename(vendedor = Nome)

folha_pagamento <- salarios %>%
  left_join(comissao_marco, by = "vendedor") %>%
  mutate(
    comissao = ifelse(is.na(comissao), 0, comissao),
    FGTS = Salario_base * 0.08,
    INSS = Salario_base * 0.11,
    salario_final = Salario_base + comissao - FGTS - INSS
  )

kable(folha_pagamento, digits = 2)
Número de Inscrição vendedor Sobrenome Setor Cargo Contrato Salario_base vendas_marco comissao FGTS INSS salario_final
101101 Nome1 Sobrenome1 Operação Vendedor 2018-01-01 2000 NA 0 160 220 1620
101102 Nome2 Sobrenome2 Operação Vendedor 2018-01-02 2000 NA 0 160 220 1620
201101 Nome14 Sobrenome14 Apoio Aux Sev Gerais 2018-04-01 2000 NA 0 160 220 1620
301101 Nome18 Sobrenome18 Administrativo Aux Administrativo 2018-04-01 2000 NA 0 160 220 1620
101103 Nome3 Sobrenome3 Operação Vendedor 2018-08-01 2000 NA 0 160 220 1620
101104 Nome4 Sobrenome4 Operação Vendedor 2019-10-01 2000 NA 0 160 220 1620
101105 Nome5 Sobrenome5 Operação Vendedor 2019-10-01 2000 NA 0 160 220 1620
101106 Nome6 Sobrenome6 Operação Vendedor 2019-10-01 2000 NA 0 160 220 1620
102111 Nome11 Sobrenome11 Operação Supervisor 2019-10-01 2500 NA 0 200 275 2025
201102 Nome15 Sobrenome15 Apoio Aux Sev Gerais 2019-10-01 2000 NA 0 160 220 1620
301102 Nome19 Sobrenome19 Administrativo Aux Administrativo 2019-10-01 2000 NA 0 160 220 1620
301103 Nome20 Sobrenome20 Administrativo Aux Administrativo 2019-10-01 2000 NA 0 160 220 1620
302104 Nome 21 Sobrenome 21 Administrativo Supervisor 2019-10-01 3000 NA 0 240 330 2430
303105 Nome 22 Sobrenome 22 Administrativo Gerente 2019-10-01 4000 NA 0 320 440 3240
101107 Nome7 Sobrenome7 Operação Vendedor 2020-03-01 2000 NA 0 160 220 1620
101108 Nome8 Sobrenome8 Operação Vendedor 2020-03-01 2000 NA 0 160 220 1620
201103 Nome16 Sobrenome16 Apoio Aux Sev Gerais 2020-03-01 2000 NA 0 160 220 1620
202104 Nome17 Sobrenome17 Apoio Supervisor 2020-03-01 2500 NA 0 200 275 2025
101109 Nome9 Sobrenome9 Operação Vendedor 2022-05-01 2000 NA 0 160 220 1620
101110 Nome10 Sobrenome10 Operação Vendedor 2022-05-01 2000 NA 0 160 220 1620
102112 Nome12 Sobrenome12 Operação Supervisor 2022-05-01 2500 NA 0 200 275 2025
103113 Nome13 Sobrenome13 Operação Gerente 2022-05-01 4000 NA 0 320 440 3240

Conclusão

A análise exploratória permitiu identificar diferenças de desempenho entre vendedores, padrões de vendas ao longo dos meses e a distribuição dos valores vendidos diariamente. Os gráficos auxiliaram na visualização dos resultados, enquanto o cálculo da folha de pagamento demonstrou a aplicação prática da análise de dados na gestão empresarial.