Análise da ocorrência de crimes e incidência de homicídios no Brasil no ano de 2017

Nome: Daniel de Almeida Thomaz Gonçalves

Matrícula: 20132520116

Curso: Administração Pública

Introdução

A violência no Brasil é um problema estrutural de nossa sociedade que tem provocado mudanças na estrutura demográfica do nosso país. O aumento da criminalidade está relacionado à falência e corrupção das instituições públicas, principalmente a segurança pública e a educação.

A desigualdade social e a má distribuição de renda em determinadas camadas da sociedade corroboram com a marginalização e eventual aumento da criminalidade no Brasil. Quando não há acesso aos serviços básicos e dificuldade de mobilidade social, a violência torna-se um problema crônico.

Para se ter uma ideia da importância de entendermos as causas do aumento da criminalidade, a Organização Mundial da Saúde (OMS), agência vinculada à Organização das Nações Unidas (ONU), declarou que em 2018 o Brasil era o nono país mais violento do mundo e o segundo na América do Sul.

O presente trabalho busca compreender alguns aspectos que levam a violência no Brasil através do número de homicídios, ocorrências de crimes e densidade demográfica populacional dos estados brasileiros no ano de 2017.

Objetivos

O objetivo do trabalho é analisar as taxas de violência no Brasil no ano de 2017. Com isso será analisado os números das principais ocorrências registradas neste ano, bem como as taxas de homicídios obtida no Ipea - Instituto de Pesquisa Econômica Aplicada, no ano de 2017 e a população dos estados brasileiros.

Com base nisso, será analisado quais Estados e regiões do Brasil possuem os maiores índices de violência e se as ocorrências e taxas de homicídios tem relações com o tamanho da população dos estados e entre si.

Descrição da base de dados

A base de dados foi montada através da junção de duas tabelas. A primeira tabela mostrava as principais ocorrências de crimes em todos os estados brasileiros nos últimos 6 anos. Ela continha 15.868 linhas e 5 colunas, sendo elas, o estado, tipo de crime, ano, mês e número de ocorrências.

A segunda tabela mostrava o número de homicídios no ano de 2017 por estado e região do Brasil, com 27 linhas e 6 colunas, sendo elas, estado, população do estado, sigla, ano, número de homicídios e região do Brasil.

library(dplyr)
library(ggplot2)
library(DT)
library(readr)
library(geobr)
library(plotly)
indicadoressegurancapublica_ocorrecia <- read_delim("indicadoressegurancapublica_ocorrecia.CSV", 
    ";", escape_double = FALSE, locale = locale(encoding = "ISO-8859-1"), 
    trim_ws = TRUE)
library(readr)
homicidios_brasil_2017 <- read_delim("homicidios_brasil_2017.csv", 
    ";", escape_double = FALSE, trim_ws = TRUE)

Metodologia utilizada

Neste trabalho serão utilizados gráficos de barra, mapas, diagramas de dispersão, gráficos de boxplot e testes de hipóteses.O gráfico de barras é utilizado para realizar comparações entre as categorias de uma variável qualitativa e uma quantitativa. Este gráfico pode ser utilizado na vertical ou horizontal.Os mapas facilitam a visualização dos dados.

Já o gráfico de dispersão é utilizado para analisar duas variáveis quantitativas. O boxplot, permite visualizar as medianas, amplitudes dos dados, simetrias e outliers.O teste de hipóteses é utilizado para determinar se há efeitos estatisticamente relevantes. Este teste é um procedimento estatístico que nos permite rejeitar ou não rejeitar uma hipótese através da evidência fornecida pela amostra. O processo de elaboração do trabalho ocorreu no RStudio, em seguida foi utilizado o RMarkdown para realizar uma publicação em HTML.

Tabelas

#primeiro separei somente o ano de 2017
tabela_ocorrencias <- indicadoressegurancapublica_ocorrecia[indicadoressegurancapublica_ocorrecia$Ano=="2017",]
tabela_crimes <- tabela_ocorrencias %>% group_by(`Tipo Crime`) %>% summarise(soma_ocorrencias_estado = sum(Ocorrências, na.rm = TRUE))
tabela_estados <- tabela_ocorrencias %>% group_by(UF) %>% summarise(soma_ocorrencias_estado = sum(Ocorrências, na.rm = TRUE))
#juntei tabelas ocorrencias e homicidios
tabela_estados2 <- homicidios_brasil_2017 %>% inner_join(tabela_estados)
## Joining, by = "UF"
#juntei tabelas por estado e região
tabela5 <- select(tabela_estados2, "UF", "regiao")
tabela4 <- tabela_ocorrencias %>% inner_join(tabela5)
## Joining, by = "UF"
summary(tabela_estados2)
##       UF              populacao           sigla                ano      
##  Length:27          Min.   :  522636   Length:27          Min.   :2017  
##  Class :character   1st Qu.: 2876296   Class :character   1st Qu.:2017  
##  Mode  :character   Median : 4025558   Mode  :character   Median :2017  
##                     Mean   : 7691146                      Mean   :2017  
##                     3rd Qu.: 9246863                      3rd Qu.:2017  
##                     Max.   :45094866                      Max.   :2017  
##    homicidios        regiao          soma_ocorrencias_estado
##  Min.   : 248.0   Length:27          Min.   :  1782         
##  1st Qu.: 642.5   Class :character   1st Qu.:  6922         
##  Median :1674.0   Mode  :character   Median : 11959         
##  Mean   :2429.7                      Mean   : 26298         
##  3rd Qu.:3807.5                      3rd Qu.: 30554         
##  Max.   :7487.0                      Max.   :202053
summary(tabela4)
##       UF             Tipo Crime             Ano           Mês           
##  Length:2893        Length:2893        Min.   :2017   Length:2893       
##  Class :character   Class :character   1st Qu.:2017   Class :character  
##  Mode  :character   Mode  :character   Median :2017   Mode  :character  
##                                        Mean   :2017                     
##                                        3rd Qu.:2017                     
##                                        Max.   :2017                     
##   Ocorrências        regiao         
##  Min.   :   0.0   Length:2893       
##  1st Qu.:   3.0   Class :character  
##  Median :  35.0   Mode  :character  
##  Mean   : 245.4                     
##  3rd Qu.: 197.0                     
##  Max.   :9872.0

População dos estados brasileiros

tabel_estadospop <- select(tabela_estados2, UF, populacao)
library(DT)
DT::datatable(tabel_estadospop, rownames = FALSE)
options(scipen=5)
grafico_populacao <- tabela_estados2 %>% ggplot(aes(x = UF, y = populacao)) + labs(title = "População dos estados Brasileiros") + geom_col(fill = "dodgerblue") + coord_flip() 
grafico_populacao

População por regiões do Brasil

grafico_regiaopop <- tabela_estados2 %>% ggplot(aes(x = regiao, y = populacao)) + labs(title = "População dos estados por região do Brasil") + geom_col(fill = "navy") 
grafico_regiaopop

Analisando os dois gráficos, podemos perceber que a região sudeste é a mais populosa do país, seguido da região nordeste. As regiões menos populosas são a Centro oeste e a Norte. O estado mais populoso do país é São Paulo com 45.094.866 habitantes, seguido de Minas Gerais e Rio de Janeiro com 21.119.536 e 16.718.956 respectivamente.

Ocorrências de crimes no ano de 2017

A seguir estão listados 9 dos principais crimes e a soma das ocorrências deles no ano de 2017.

DT::datatable(tabela_crimes, rownames = FALSE)
tabela_crimes %>% ggplot(aes(x = `Tipo Crime`, y = soma_ocorrencias_estado)) + labs(title = "Soma de ocorrências por crime") + geom_col(fill = "purple") + coord_flip()

Podemos perceber que o roubo de veiculos e furto de veículos foram os crimes mais praticados no ano de 2017. Roubo a instituição financeira e Lesão corporal seguida de morte foram os que registraram menos ocorrências.

Ocorrências de crimes por mês no ano de 2017

mes <- c("Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez")
valores3 <- c(60887, 56851, 64857, 59688, 62264, 57382, 57895, 59237, 56686, 59503, 58224, 56583)
barplot_mes <- barplot(valores3, col = "gold", names.arg = mes, xlab = "Mês", ylab = "Soma de ocorrências", main = "Gráfico de ocorrências por mês")

barplot_mes
##       [,1]
##  [1,]  0.7
##  [2,]  1.9
##  [3,]  3.1
##  [4,]  4.3
##  [5,]  5.5
##  [6,]  6.7
##  [7,]  7.9
##  [8,]  9.1
##  [9,] 10.3
## [10,] 11.5
## [11,] 12.7
## [12,] 13.9

Analisando o gráfico podemos perceber um equilibrio entre a incidencias de crimes durante todo o ano de 2017.O mês de Março de 2017 foi o mês com maior número de crimes.

Ocorrências por regiões do Brasil

boxplot(tabela_estados2$soma_ocorrencias_estado~tabela_estados2$regiao, xlab = "Regiões", ylab = "Ocorrências", main = "Boxplot ocorrências por região do Brasil", col= "lightblue")

Analisando o boxplot podemos concluir que há uma maior variância de ocorrências na região sudeste. Podemos perceber também, que na região sul, a mediana está bem próxima do máximo. Na região norte, a mediana é bem próxima do mínimo e é possível reconhecer um outlier. As regiões Centro Oeste e Nordeste tem uma mediana bem próxima

Ocorrências por estado

ocor_uf <- tabela4 %>% group_by(UF) %>% summarise(ocorrencias = sum(Ocorrências, na.rm = TRUE))
grafico_UF_ocorrencia <- ocor_uf %>% ggplot(aes(x = UF, y = ocorrencias)) + labs(title = "Total de ocorrências nos estados Brasileiros") + geom_col(fill = "red") + coord_flip() 
grafico_UF_ocorrencia

São Paulo é disparado o estado com o maior número de crimes no Brasil, seguido pelo Rio de Janeiro e Minas Gerais.

Mapa do Brasil por ocorrências

malha <- geobr::read_state()
maps <- rename(tabela_estados2, abbrev_state = sigla)

Base_com_mapa <- left_join(malha,maps)
## Joining, by = "abbrev_state"
no_axis <- theme(axis.title=element_blank(),
                 axis.text=element_blank(),
                 axis.ticks=element_blank())
mapa1<-ggplot() +
  geom_sf(data=Base_com_mapa, aes(fill=soma_ocorrencias_estado), color= NA, size=.15) +
  labs(subtitle="Mapa 1 - Ocorrencias por UF", size=8) +
  scale_fill_distiller(palette = "Blues", name="Ocorrencias", limits = c(1782,202053)) +
  theme_minimal() +
  no_axis
ggplotly(mapa1)

Para facilitar a visualização, temos um mapa das ocorrências por estados brasileiros. Quanto mais clara a cor em azul, maior o número de ocorrências em um estado.

Homicídios por estado

grafico_homic_uf <- tabela_estados2 %>% ggplot(aes(x = UF, y = homicidios)) + labs(title = "Total de homicidios por estado brasileiro") + geom_col(fill = "darkgreen") + coord_flip() 
grafico_homic_uf

Diferentemente do que ocorre com ocorrências, em relação a homicidios por estados brasileiros podemos observar que o líder nesse quesito é o Estado da Bahia, seguido de Rio de Janeiro, Ceará e Pernambuco.

Mapa do Brasil por Homicídios

malha <- geobr::read_state()
maps <- rename(tabela_estados2, abbrev_state = sigla)

Base_com_mapa <- left_join(malha,maps)

no_axis <- theme(axis.title=element_blank(),
                 axis.text=element_blank(),
                 axis.ticks=element_blank())

mapa2<-ggplot() +
  geom_sf(data=Base_com_mapa, aes(fill=homicidios), color= NA, size=.15) +
  labs(subtitle="Mapa 2 - Homicídios por UF", size=8) +
  scale_fill_distiller(palette = "Blues", name="HomicÍdios", limits = c(248,7487)) +
  theme_minimal() +
  no_axis

ggplotly(mapa2)

Para facilitar a visualização, temos um mapa dos homicídios por estados brasileiros. Quanto mais clara a cor em azul, maior o número de homicídios em um estado.

Homicidios por regiões do Brasil

boxplot(tabela_estados2$homicidios~tabela_estados2$regiao, xlab = "Regiões", ylab = "Homicidios", main = "Boxplot homicidios por região do Brasil", col= "#AAFF00")

Analisando o boxplot podemos perceber a assimetria dos dados. Podemos concluir que há uma maior variância na região nordeste. A região norte, é a que apresenta a menor variância, tendo a mediana próxima do primeiro quartil e possuindo um outlier. A região Centro Oeste possui a mediana mais próxima do mínimo.

População e ocorrências

plot(tabela_estados2$populacao,tabela_estados2$soma_ocorrencias_estado,pch=19,main = "Diagrama de dispersão",xlab = "População",ylab = "Ocorrências") + abline(lsfit(tabela_estados2$populacao,tabela_estados2$soma_ocorrencias_estado),col= "darkred")

## integer(0)

Há uma correlação positiva entre as variáveis analisadas pois há uma concentração dos pontos em tendência crescente, ou seja, conforme a variável população aumenta, a variável ocorrências também aumenta. Ela é forte pois quanto maior a correlação entre as variáveis, maior será a proximidade dos pontos, ou seja, estarão menos dispersos.

População e homicídios

plot(tabela_estados2$populacao,tabela_estados2$homicidios,pch=19,main = "Diagrama de dispersão",xlab = "População",ylab = "Homicídios") + abline(lsfit(tabela_estados2$populacao,tabela_estados2$homicidios),col= "darkred")

## integer(0)

Há uma correlação positiva entre as variáveis pois a medida que a população cresce, o número de homicídios também aumenta.

Homicídios e ocorrências

g <- ggplot(tabela_estados2)
dispercao_hom_ocor <- g +
  geom_point(aes(x = homicidios,
                 y = soma_ocorrencias_estado,
                 color = UF),
             size = 3) + scale_color_manual("UF", values = c("black", "white", "red", "green", "pink", "yellow", "gray", "blue", "orange", "brown", "purple", "cyan", "darkgoldenrod4", "blue4", "beige", "darkgreen", "darkorchid1", "deepskyblue4", "darkslategrey", "darkorange3", "firebrick2", "darkolivegreen1", "aliceblue", 652, 656, 121, 122)) + labs(title = "Relação entre ocorrências e homicidios por Estado - 2017")
dispercao_hom_ocor

tabela_estados2 %>% 
  ggplot(aes(x = homicidios,
             y = soma_ocorrencias_estado, 
             size = populacao)) +
  geom_point() + 
  labs(title = "Relação entre ocorrências e homicidios por Estado - 2017",
       x = "Homicidios",
       y = "Ocorrencias")

Examinando os gráficos, podemos observar que o primeiro mostra um diagrama de dispersão entre ocorrências de crimes e homicidios. As cores diferenciam os estados, destacando-os no diagrama. No gráfico de bolha, uma extensão natural do gráfico de pontos, permite observar possíveis relações entre três variáveis. Para este tipo de gráfico, são necessárias três variáveis: duas para indicarem as posições x e y que foram homicídios e ocorrências e uma terceira para definir o tamanho do ponto que no caso foi a população.

Teste de hipóteses

Para avaliar se a estatística possui relevância utilizamos o teste de hipóteses para medir o grau de associação entre duas variáveis quantitativas, no caso as variáveis “População”, “Homicídios” e "Ocorrências, e se esta é significativa.

Teste de Shapiro

Para determinar qual teste se utilizará com variáveis quantitativas, utilizamos o teste de Shapiro para aferir a normalidade dos dados.

Sendo H0 para uma distribuição normal e H1 se os dados não seguem uma distribuição normal.

Sendo alpha:0,05.

Se pvalor for menor que 0,05 rejeita-se H0.

Se pvalor for maior que 0,05 não se rejeita H0.

shapiro.test(tabela_estados2$populacao)
## 
##  Shapiro-Wilk normality test
## 
## data:  tabela_estados2$populacao
## W = 0.6786, p-value = 0.000001981
shapiro.test(tabela_estados2$homicidios)
## 
##  Shapiro-Wilk normality test
## 
## data:  tabela_estados2$homicidios
## W = 0.87169, p-value = 0.003194
shapiro.test(tabela_estados2$soma_ocorrencias_estado)
## 
##  Shapiro-Wilk normality test
## 
## data:  tabela_estados2$soma_ocorrencias_estado
## W = 0.57224, p-value = 0.0000000993

Como os resultados de pvalor são menores que 0,05, rejeita-se H0. Tais dados não seguem uma distribuição normal. Sendo assim será realizado o teste de correlação de spearman.

Teste de correlação de Spearman

Sendo H0 para rho igual a zero e H1 para rho diferente de zero.

Sendo alpha:0,05.

Se pvalor for menor que 0,05 rejeita-se H0.

Se pvalor for maior que 0,05 não se rejeita H0.

#Homicídios e Ocorrências
cor.test(tabela_estados2$homicidios,tabela_estados2$soma_ocorrencias_estado, method = "spearman")
## 
##  Spearman's rank correlation rho
## 
## data:  tabela_estados2$homicidios and tabela_estados2$soma_ocorrencias_estado
## S = 504, p-value = 0.000001616
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##       rho 
## 0.8461538

Como o pvalor é menor do que alpha podemos concluir que há associação entre as variáveis homicidios e ocorrências.

#População e Ocorrências
cor.test(tabela_estados2$populacao,tabela_estados2$soma_ocorrencias_estado, method = "spearman")
## 
##  Spearman's rank correlation rho
## 
## data:  tabela_estados2$populacao and tabela_estados2$soma_ocorrencias_estado
## S = 232, p-value = 0.0000006441
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##       rho 
## 0.9291819

Como o pvalor é menor do que alpha podemos concluir que há associação entre as variáveis população e ocorrências.

#População e Homicídios
cor.test(tabela_estados2$populacao,tabela_estados2$homicidios, method = "spearman")
## 
##  Spearman's rank correlation rho
## 
## data:  tabela_estados2$populacao and tabela_estados2$homicidios
## S = 292, p-value = 0.0000009054
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##       rho 
## 0.9108669

Como o pvalor é menor do que alpha podemos concluir que há associação entre as variáveis população e homicídios.

Conclusão

Como o Brasil é um pais de proporções continentais, há diferenças entre os Estados brasileiros e suas regiões. Pela análise gráfica podemos perceber que a região sudeste é a maior região em termos populacionais do Brasil. Com relação a ocorrências de crimes, foi possível identificar que São Paulo é o Estado com mais ocorrências de crimes, porém não esta nem entre os três estados com mais casos de homicidios no ano de 2017.

Em relações a ocorrência de crimes por mês, não foi encontrado valores discrepantes, monstrando uma constãncia de ocorrências ao longo do ano. Através dos boxplot podemos identificar que existe uma maior variancia de ocorrências na sudeste do Brasil e uma maior variancia de homicidios na região nordeste. Pelo teste de hipóteses foi possível verificar que existe associação entre as variáveis população, homicídios e ocorrências.

Levando tudo isso em consideração, podemos concluir que a medida que a população aumenta, cresce tambem as taxas de homicidios e de ocorrencias de crimes.Há também uma associação positiva entre o número de ocorrências e as taxas de homicidios.