Bibliotecas utilizadas
require(knitr)## Carregando pacotes exigidos: knitr
require(Hmisc)## Carregando pacotes exigidos: Hmisc
## Warning: package 'Hmisc' was built under R version 4.1.2
## Carregando pacotes exigidos: lattice
## Carregando pacotes exigidos: survival
## Carregando pacotes exigidos: Formula
## Carregando pacotes exigidos: ggplot2
##
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:base':
##
## format.pval, units
Leitura do arquivo e já convertendo em um dataframe
f <- read.csv(params$path, sep = ";", encoding = "UTF-8", strip.white=TRUE)
df <- as.data.frame(f)Analisando o dataframe
describe(df)## df
##
## 22 Variables 2445 Observations
## --------------------------------------------------------------------------------
## X.U.FEFF.Concurso
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 2445 1 1223 815.3 123.2 245.4
## .25 .50 .75 .90 .95
## 612.0 1223.0 1834.0 2200.6 2322.8
##
## lowest : 1 2 3 4 5, highest: 2441 2442 2443 2444 2445
## --------------------------------------------------------------------------------
## Local
## n missing distinct
## 2356 89 800
##
## lowest : Afonso Cláudio, ES Aguaí, SP Águas de Lindóia, SP AIMORÉS, MG ALEGRE, ES
## highest: VOTORANTIM, SP VOTUPORANGA, SP WENCESLAU BRAZ, PR Wenceslau Bráz, PR XANXERÊ, SC
## --------------------------------------------------------------------------------
## Data.do.Sorteio
## n missing distinct
## 2445 0 2445
##
## lowest : 01/02/1998 01/02/2003 01/02/2006 01/02/2012 01/02/2014
## highest: 31/12/2017 31/12/2018 31/12/2019 31/12/2020 31/12/2021
## --------------------------------------------------------------------------------
## Coluna.1
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 42 0.996 8.6 7.402 1.0 2.0
## .25 .50 .75 .90 .95
## 3.0 7.0 12.0 18.6 23.0
##
## lowest : 1 2 3 4 5, highest: 39 41 43 46 50
## --------------------------------------------------------------------------------
## Coluna.2
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 48 0.999 17.29 10.26 5 6
## .25 .50 .75 .90 .95
## 10 16 23 30 34
##
## lowest : 2 3 4 5 6, highest: 45 46 47 48 51
## --------------------------------------------------------------------------------
## Coluna.3
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 53 0.999 26.29 11.38 11 13
## .25 .50 .75 .90 .95
## 19 26 33 40 43
##
## lowest : 3 4 5 6 7, highest: 51 52 53 54 56
## --------------------------------------------------------------------------------
## Coluna.4
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 51 0.999 35.02 11.15 18 22
## .25 .50 .75 .90 .95
## 28 35 42 47 51
##
## lowest : 8 9 10 11 12, highest: 54 55 56 57 58
## --------------------------------------------------------------------------------
## Coluna.5
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 48 0.999 43.5 10.16 27 31
## .25 .50 .75 .90 .95
## 38 44 51 54 56
##
## lowest : 11 12 14 15 16, highest: 55 56 57 58 59
## --------------------------------------------------------------------------------
## Coluna.6
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 38 0.996 52.19 7.457 38 42
## .25 .50 .75 .90 .95
## 49 54 58 59 60
##
## lowest : 22 24 25 26 27, highest: 56 57 58 59 60
## --------------------------------------------------------------------------------
## Ganhadores.Faixa.1
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 11 0.536 0.3472 0.5825 0 0
## .25 .50 .75 .90 .95
## 0 0 0 1 2
##
## lowest : 0 1 2 3 4, highest: 6 7 15 17 52
##
## Value 0 1 2 3 4 5 6 7 15 17 52
## Frequency 1886 416 99 23 12 3 2 1 1 1 1
## Proportion 0.771 0.170 0.040 0.009 0.005 0.001 0.001 0.000 0.000 0.000 0.000
## --------------------------------------------------------------------------------
## Ganhadores.Faixa.2
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 342 1 111.9 103.3 26.2 32.0
## .25 .50 .75 .90 .95
## 47.0 75.0 117.0 188.0 262.8
##
## lowest : 4 6 9 10 12, highest: 1712 2581 3001 4862 7688
##
## Value 0 100 200 300 400 500 600 700 800 900 1000
## Frequency 690 1379 237 62 29 12 5 8 3 1 7
## Proportion 0.282 0.564 0.097 0.025 0.012 0.005 0.002 0.003 0.001 0.000 0.003
##
## Value 1100 1200 1400 1600 1700 2600 3000 4900 7700
## Frequency 1 2 2 1 2 1 1 1 1
## Proportion 0.000 0.001 0.001 0.000 0.001 0.000 0.000 0.000 0.000
##
## For the frequency table, variable is rounded to the nearest 100
## --------------------------------------------------------------------------------
## Ganhadores.Faixa.3
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 2171 1 7181 5659 2200 2672
## .25 .50 .75 .90 .95
## 3665 5314 7636 11561 15461
##
## lowest : 683 689 808 908 965, highest: 124889 143494 168546 173428 303857
## --------------------------------------------------------------------------------
## Rateio.Faixa.1
## n missing distinct
## 2445 0 560
##
## lowest : 0 10000441,74 101195308,3 101484527,4 10166807,68
## highest: 9770979,43 978205,14 9806336,06 98688974,76 9937283,03
## --------------------------------------------------------------------------------
## Rateio.Faixa.2
## n missing distinct
## 2445 0 2445
##
## lowest : 10009,69 10013,62 10017,32 10020,94 10035,16
## highest: 9974,16 9974,9 9982,42 9985,67 9988,89
## --------------------------------------------------------------------------------
## Rateio.Faixa.3
## n missing distinct
## 2445 0 2400
##
## lowest : 100,36 100,54 100,89 1002,65 1002,8
## highest: 992,09 992,38 993,43 993,95 995,19
## --------------------------------------------------------------------------------
## Cidade
## n missing distinct
## 455 1990 176
##
## lowest : ABREU E LIMAPE AC AL ALEGRETERS ALTO PARNAÍBAMA
## highest: VILA VELHAES VINHEDOSP VITORIA DE SANTO ANTÃOPE VITÓRIAES VOLTA REDONDARJ
## --------------------------------------------------------------------------------
## Valor.Arrecadado
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 1376 0.916 29059775 37703039 0 0
## .25 .50 .75 .90 .95
## 0 23856610 39749838 58485484 73761528
##
## lowest : 0 5610856 7895436 8765996 8852704
## highest: 886048366 890947368 1028882102 1175719054 1510256529
## --------------------------------------------------------------------------------
## Estimativa.para.o.próximo.concurso
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 167 0.956 15679714 22327429 0 0
## .25 .50 .75 .90 .95
## 0 4000000 23000000 40000000 55800000
##
## lowest : 0 1000000 1100000 1200000 1300000
## highest: 240000000 275000000 280000000 300000000 370000000
## --------------------------------------------------------------------------------
## Valor.Acumulado.Próximo.Concurso
## n missing distinct Info Mean Gmd .05 .10
## 2445 0 1440 0.93 20349103 25929575 0 0
## .25 .50 .75 .90 .95
## 0 8077223 38049323 57819053 66896126
##
## lowest : 0 86445 121643 133002 136391
## highest: 104122626 122411671 128027189 135838889 139099572
## --------------------------------------------------------------------------------
## Acumulado
## n missing distinct
## 2445 0 2
##
## Value NAO SIM
## Frequency 559 1886
## Proportion 0.229 0.771
## --------------------------------------------------------------------------------
## Sorteio.Especial
## n missing distinct
## 2445 0 2
##
## Value NAO SIM
## Frequency 5 2440
## Proportion 0.002 0.998
## --------------------------------------------------------------------------------
## Observação
## n missing distinct
## 894 1551 717
##
## lowest : "URGENTE: O ENCERRAMENTO DAS APOSTAS PARA A MEGA-SENA DA VIRADA, CONCURSO 1140, SERÁ AS 14 HORAS, HORÁRIO DE BRASÍLIA, DO DIA 31/12/2009". . 01 Ganhador da MEGA - Distrito Federal 01 GANHADOR DO ESTADO DO "RIO GRANDE DO NORTE" 02 Ganhadores da MEGA: Distrito Federal e Mato Grosso do Sul
## highest: Sorteio realizado em estúdio de TV. Sorteio realizado em Estúdio de TV. SORTEIO REALIZADO EM ESTÚDIO DE TV. UM GANHADOR DA MEGA-SENA, no Estado do Rio de Janeiro - Capital VALOR DO PRÊMIO PRINCIPAL PARA O CONCURSO 1350 - MEGA DA VIRADA: R$ 177.617.487,62.
## --------------------------------------------------------------------------------
## Listando colunas do dataset
knitr::kable(head(df, 5))| X.U.FEFF.Concurso | Local | Data.do.Sorteio | Coluna.1 | Coluna.2 | Coluna.3 | Coluna.4 | Coluna.5 | Coluna.6 | Ganhadores.Faixa.1 | Ganhadores.Faixa.2 | Ganhadores.Faixa.3 | Rateio.Faixa.1 | Rateio.Faixa.2 | Rateio.Faixa.3 | Cidade | Valor.Arrecadado | Estimativa.para.o.próximo.concurso | Valor.Acumulado.Próximo.Concurso | Acumulado | Sorteio.Especial | Observação |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Brasília, DF | 11/03/1996 | 4 | 5 | 30 | 33 | 41 | 52 | 0 | 17 | 2016 | 0 | 39158,92 | 330,21 | 0 | 0 | 0 | SIM | SIM | ||
| 2 | Belo Horizonte, MG | 18/03/1996 | 9 | 37 | 39 | 41 | 43 | 49 | 1 | 65 | 4488 | 2307162,23 | 14424,02 | 208,91 | PR | 0 | 0 | 0 | NAO | SIM | |
| 3 | Brasília, DF | 25/03/1996 | 10 | 11 | 29 | 30 | 36 | 47 | 2 | 62 | 4261 | 391192,51 | 10515,93 | 153,01 | RN | 0 | 0 | 0 | NAO | SIM | |
| 4 | Santo André, SP | 01/04/1996 | 1 | 5 | 6 | 27 | 42 | 59 | 0 | 39 | 3311 | 0 | 15322,24 | 180,48 | 0 | 0 | 0 | SIM | SIM | ||
| 5 | Brasília, DF | 08/04/1996 | 1 | 2 | 6 | 16 | 19 | 46 | 0 | 98 | 5399 | 0 | 5318,1 | 96,53 | 0 | 0 | 0 | SIM | SIM |
## Renomeando a 1a coluna
colnames(df)[1] <- "Concurso"
## Como ficou o dataset após o ajuste nas colunas
knitr::kable(head(df, 5))| Concurso | Local | Data.do.Sorteio | Coluna.1 | Coluna.2 | Coluna.3 | Coluna.4 | Coluna.5 | Coluna.6 | Ganhadores.Faixa.1 | Ganhadores.Faixa.2 | Ganhadores.Faixa.3 | Rateio.Faixa.1 | Rateio.Faixa.2 | Rateio.Faixa.3 | Cidade | Valor.Arrecadado | Estimativa.para.o.próximo.concurso | Valor.Acumulado.Próximo.Concurso | Acumulado | Sorteio.Especial | Observação |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Brasília, DF | 11/03/1996 | 4 | 5 | 30 | 33 | 41 | 52 | 0 | 17 | 2016 | 0 | 39158,92 | 330,21 | 0 | 0 | 0 | SIM | SIM | ||
| 2 | Belo Horizonte, MG | 18/03/1996 | 9 | 37 | 39 | 41 | 43 | 49 | 1 | 65 | 4488 | 2307162,23 | 14424,02 | 208,91 | PR | 0 | 0 | 0 | NAO | SIM | |
| 3 | Brasília, DF | 25/03/1996 | 10 | 11 | 29 | 30 | 36 | 47 | 2 | 62 | 4261 | 391192,51 | 10515,93 | 153,01 | RN | 0 | 0 | 0 | NAO | SIM | |
| 4 | Santo André, SP | 01/04/1996 | 1 | 5 | 6 | 27 | 42 | 59 | 0 | 39 | 3311 | 0 | 15322,24 | 180,48 | 0 | 0 | 0 | SIM | SIM | ||
| 5 | Brasília, DF | 08/04/1996 | 1 | 2 | 6 | 16 | 19 | 46 | 0 | 98 | 5399 | 0 | 5318,1 | 96,53 | 0 | 0 | 0 | SIM | SIM |
Descobrindo os numeros que aparecem com maior frequência
## Fatiamento das colunas que contém os números sorteados
m <- as.matrix(df[4:9])
## Listagem números únicos
numero <- unique(c(m))
## Descobrindo quantas vezes foram sorteados
qtd_repeticoes <- sapply(numero, function(x) sum(m == x))
df_resultado <- data.frame(numero, qtd_repeticoes)Top 10 números com maior frequência
maior_repeticao <- head(df_resultado[with(df_resultado, order(-df_resultado$qtd_repeticoes)), ], 10)
barplot(
maior_repeticao$qtd_repeticoes,
main = "Top 10 números com maior frequência",
xlab = "Dezenas",
ylab = "Frequência",
names.arg = maior_repeticao$numero,
horiz = FALSE)Top 10 números com menor frequência
menor_repeticao <- head(df_resultado[with(df_resultado, order(df_resultado$qtd_repeticoes)), ], 10)
barplot(
menor_repeticao$qtd_repeticoes,
main = "Top 10 números com menor frequência",
xlab = "Dezenas",
ylab = "Frequência",
names.arg = menor_repeticao$numero,
horiz = FALSE)Sorteio com maior número de ganhadores do prêmio principal
maior_num_ganhadores <- df[which.max(df$Ganhadores.Faixa.1),]
resultado <- maior_num_ganhadores[ , c(1, 3, 10, 13, 17, 4:9, 22)]
colnames(resultado) <- c(
"Concurso",
"Data sorteio",
"Qtd apostas",
"Rateio p/ cartão",
"Valor arrecadado",
"1a dezena",
"2a dezena",
"3a dezena",
"4a dezena",
"5a dezena",
"6a dezena",
"Obs")
knitr::kable(resultado)| Concurso | Data sorteio | Qtd apostas | Rateio p/ cartão | Valor arrecadado | 1a dezena | 2a dezena | 3a dezena | 4a dezena | 5a dezena | 6a dezena | Obs | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2110 | 2110 | 31/12/2018 | 52 | 5818007,36 | 886048366 | 5 | 10 | 12 | 18 | 25 | 33 | AS APOSTAS GANHADORAS DO CANAL ELETRÔNICO SÃO DAS CIDADE DE SIMÕES FILHO(BA), BELO HORIZONTE(MG) E CUIABÁ(MT) |
Sorteio com maior valor arrecadado
maior_valor <- df[which.max(df$Valor.Arrecadado),]
resultado <- maior_valor[ , c(1, 3, 10, 13, 17, 4:9, 22)]
colnames(resultado) <- c(
"Concurso",
"Data sorteio",
"Qtd apostas",
"Rateio p/ cartão",
"Valor arrecadado",
"1a dezena",
"2a dezena",
"3a dezena",
"4a dezena",
"5a dezena",
"6a dezena",
"Obs")
knitr::kable(resultado)| Concurso | Data sorteio | Qtd apostas | Rateio p/ cartão | Valor arrecadado | 1a dezena | 2a dezena | 3a dezena | 4a dezena | 5a dezena | 6a dezena | Obs | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2440 | 2440 | 31/12/2021 | 2 | 189062363,7 | 1510256529 | 12 | 15 | 23 | 32 | 33 | 46 |