Ocorrências Estado de São Paulo

Author

Alef & Wallace

Análise das ocorrências do Estado de São Paulo

Criminalidade no Estado de São Paulo

Este estudo busca a partir do dados diponibilizado pela secretária de segurança pública do estado de São Paulo, apresentar como o crime se distribui no município e quais são os crimes mais cometidos

Crimes cometidos por ano em São Paulo

O primeiro gráfico apresenta o numero de ocorrências de crimes em São Paulo, fica evidente que a partir de 2017 depois de atingir o pico, o número de ocorrências começou a diminuir, levando a seu menor patamar em 2021.

10 Municípios de São Paulo com mais ocorrências

Nesta etapa do estudo damos enfâse as cidades com as dez maiores ocorrências de crimes, fica evidente que as cidades mais populosas são em sua maioria as que mais ocorrem crimes.

Os 10 crimes mais cometidos no estado de São Paulo

Mapa das corrências em São Paulo

A partir deste mapa é possível observar como se distribuem os crimes de acordo com as regiões, as cidades com cores mais próximas do vermelho são as cidades com maior número de ocorrências dividida pela populção e multiplicada por mil.

Evolução dos furtos

library(tidyverse)

#| warning: false


oco <- readr::read_csv("oco2.csv")


oco_furtos <- oco |> 
  group_by(
    ano
  ) |> 
  summarise(
    furto = sum(furto_outros, na.rm = T),
    furto_carro = sum(furto_de_veiculo, na.rm = T)
  )


oco_furtos |> 
   mutate(
     furto2 = furto/1000
   ) |> 
  ggplot() +
  geom_point(
    aes(x=ano, y= furto2),color="darkblue", show.legend = F, size = 1.4
  )+
  geom_line(
    aes( y = furto2, x = ano),color  = "darkblue", linewidth = 0.9
  )+
  theme_bw() +
  labs(y= " Furtos ", title = "Evolução dos Furtos no Estado de São paulo")

Podemos notar o impacto da pandemia nos pequenos furtos no estado do São Paulo na variação de 2020/2021 houve queda de -22,36% caindo de 500 mil para 300 mil, no

tirando o efeito da pandemia

O Estado de São Paulo é responsável pelos números absolutos!

#| warning: false

#5 maiores estados com furtos


oco |> 
  group_by(id_municipio
   ) |> 
  summarise(
     furto = sum(furto_outros, na.rm = T),
      furto_carro = sum(furto_de_veiculo, na.rm = T)
    ) |> 
  arrange(desc(furto)) |> 
  slice(1:5) 
# A tibble: 5 × 3
  id_municipio   furto furto_carro
         <dbl>   <dbl>       <dbl>
1      3550308 3479769      885654
2      3509502  324248       85900
3      3543402  212222       38812
4      3518800  191656       55489
5      3552205  148797       33029
# agrupando por ano 
#| warning: false

oco |> 
  filter(
    id_municipio %in% c(3550308, 3509502,  3543402, 3518800, 3552205)
  ) |> 
  group_by(
    ano, id_municipio, regiao_ssp
  ) |> 
  summarise(
    furto = sum(furto_outros, na.rm = T),
    furto_carro = sum(furto_de_veiculo, na.rm = T)
  ) |> 
  ggplot(
    aes( x = ano, y = furto , group = regiao_ssp, color = factor(regiao_ssp))
  )+
  geom_line(
    aes( x=ano, y= furto), linewidth = 0.9
  ) + 
  theme_bw( )+
  labs(
    title = "Furtos Absolutos",
    color = "Municípios"
  ) 
`summarise()` has grouped output by 'ano', 'id_municipio'. You can override
using the `.groups` argument.

A capital do Estado é responsáavel pelo números absolutos!

Mas com relação aos furtos por mil habitantes?

Furtos por mil habitantes dos 5 municípios com maiores taxas

library(gganimate)

dado3 <- abjData::pnud_min

dado3 <- dado3 |> 
  select(
    muni_id:muni_nm
  )




pop_sp <- readr::read_csv("pop_sp.csv")

oco_ano <- oco |> 
  group_by(
    ano, id_municipio
  ) |> 
  summarise(
    furto = sum(furto_outros)
  )


oco_ano_pop <- pop_sp |> 
  mutate(
    id_municipio = as.double(id_municipio)
  ) |> 
  inner_join( oco_ano, by = c("id_municipio"="id_municipio","ano"))

# conseguindo os 5 municipios com maisores taxa de furto média

oco_ano_pop |> 
  mutate(
    tx_f = (furto/populacao)*1000
  ) |> 
  arrange(
    desc(tx_f)
  ) |> 
  group_by(
    id_municipio
  ) |> 
  summarise(
   tx_f_m = sum(tx_f, na.rm = T)/12
  ) |> 
  arrange(
    desc( tx_f_m)
  ) |> 
  slice(1:5)
# A tibble: 5 × 2
  id_municipio tx_f_m
         <dbl>  <dbl>
1      3520426   98.7
2      3502507   47.0
3      3531100   44.8
4      3522109   40.6
5      3505500   40.3
# gráfico com os municipios com as maiores tx médi de furto 
#  por mil habitantes

#| warning: false

oco_ano_pop |> 
  filter(
    id_municipio %in% c(3520426, 3502507, 3531100, 3522109, 3505500)
  ) |> 
  mutate(
    id_municipio = as.character(id_municipio)
  ) |> 
  inner_join(
    dado3, by = c("id_municipio"="muni_id")
    ) |> 
  mutate(
    tx_f = (furto/populacao)*1000
  ) |> 
  group_by(
    ano, id_municipio
  ) |> 
ggplot(
  aes( x = ano, y = tx_f, group = muni_nm, color =  factor(muni_nm))
)+
  geom_line(
    aes( x=ano, y= tx_f), linewidth = 0.9
  )+
  labs(
    title = "Os 5 Municípios Com as maiores furtos por mil habitantes",
    y = "Taxa de furtos Por Mil",
    color = "Municípios"
  )+
  theme_bw()+
  transition_reveal(ano) 
NULL

Podemos notar que nenhum dos municípios que apareceram nos absolutos aparecem aqui A ilha comprida seguem em disparado, com uma taxa de furto média de 98.71, ou seja a cada 1000 habitantes 99 são furtadas! Nem a pandemia conseguiu fazer diminuir o número de furtos

Regressão linear

library(tidyverse)
pnud <- abjData::pnud_min


pnud_sp <- pnud  |> 
  filter(
    uf_sigla == "SP"
  )


oco_f_idhm <- oco_ano_pop |> 
  mutate(
    ano = as.character(ano),
    id_municipio = as.character(id_municipio)
  ) |> 
  inner_join(
    pnud_sp, by = c("id_municipio"="muni_id", "ano")
  )


oco_f_idhm <- oco_f_idhm |> 
  mutate(
    tx_f = (furto/populacao)*1000,
    idhm2 = idhm*100,
    gini2 = gini*100,
    idhm_e2 = idhm_e*100,
    idhm_l2 = idhm_l*100,
    idhm_r2 = idhm_r*100
  ) 

#| warning: false

oco_f_idhm |> 
  ggplot()+
  geom_point(
    aes(y= tx_f , x = gini), color = "darkblue"
  )+
  geom_smooth(
    aes( y= tx_f , x = gini ), color = "orange",
  se = F, method = "lm"
  ) +
  labs( title = "correlação taxa de furtos por mil e índice gini, municípios de SP 2010",
        y = "Taxa de Furtos Por Mil")+
  theme_bw()

#| warning: false

modelo99 <- lm(tx_f ~ idhm_e2 + idhm_r2 + gini2 + idhm_l2 + idhm2, oco_f_idhm)

summary(modelo99)

Call:
lm(formula = tx_f ~ idhm_e2 + idhm_r2 + gini2 + idhm_l2 + idhm2, 
    data = oco_f_idhm)

Residuals:
    Min      1Q  Median      3Q     Max 
-10.428  -3.071  -0.672   2.339  60.982 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) -27.6483     7.6248  -3.626 0.000311 ***
idhm_e2      -3.5865     1.3814  -2.596 0.009643 ** 
idhm_r2      -3.1149     1.2990  -2.398 0.016777 *  
gini2         0.2106     0.0407   5.175 3.06e-07 ***
idhm_l2      -2.6925     1.1175  -2.409 0.016266 *  
idhm2         9.7139     3.7695   2.577 0.010192 *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 4.997 on 634 degrees of freedom
Multiple R-squared:  0.1331,    Adjusted R-squared:  0.1263 
F-statistic: 19.47 on 5 and 634 DF,  p-value: < 2.2e-16

achamos uma correlação positiva entre gini e a taxa de furtos 0.2106 ou seja, uma unidade adcional do gini*100 aumeta a taxa em 0,21 Achamos também uma correlação negativa entre indice educacional -3,5856

Agora vamos analisar a evolução dos homicídios no Estado

# dentre os ano de 2010 a 2015, varias variáveis estavam contenado apenas NA-----

# apos consertar isso, plotamos o dado

oco|> 
  group_by(
    ano) |> 
  summarise(
    homi_total = sum(numero_de_vitimas_em_homicidio_doloso, na.rm=TRUE)+
      sum(numero_de_vitimas_em_homicidio_doloso_por_acidente_de_transito, na.rm = TRUE)+
      sum(  numero_de_vitimas_em_latrocinio, na.rm = TRUE)+
      sum(lesao_corporal_seguida_de_morte, na.rm = TRUE) 
  ) |> 
  ggplot() +
  geom_point(
    aes(x=ano, y=homi_total, size = 0.6),color="red", show.legend = F
  )+geom_line(
   aes( x=ano, y=homi_total),color  = "red", linewidth = 1.5
  )+theme_bw() +
  labs(y= " homicídios ", title = "Evolução dos homicídios no Estado de São paulo")

Podemos observar que o número de homicídios caiu muiro no estado de sp a variação de 2002/2021 DE -88,66% de homicídios em 20 anos.Podemos observar também o efeito que a pandemia teve!

Tabela

library(gt)
library(tidyverse)

oco_t_homi <- oco |>
  mutate(
    homi_t =  numero_de_vitimas_em_homicidio_doloso+numero_de_vitimas_em_homicidio_doloso_por_acidente_de_transito+
      numero_de_vitimas_em_latrocinio+lesao_corporal_seguida_de_morte
  ) 


oco_t_homi |> 
  group_by(
  regiao_ssp
  ) |> 
  summarise(
    h_t = sum(homi_t, na.rm = T)
  ) |> arrange(
    desc(h_t)
  ) |> 
  rename(
    Municípios = regiao_ssp,
    Homicídios = h_t
  ) |>  
  slice(1:10)|> 
  gt() |> 
  tab_header(
    title = md("**Os 10 municípios com mais homicídios**"),
    subtitle = md("acumulado desde do ano de 2002")
  ) |> 
  tab_source_note(md("Fonte:[Secretaria De Segurança Pública Do Estado De São Paulo](https://www.ssp.sp.gov.br/estatistica)")) |> 
  opt_table_font(
    font = list(
      google_font(name = "Abel")
    )
  ) |> 
  tab_options(heading.subtitle.font.size = 18,
heading.background.color = "#FFD6BA",
table.border.top.color = "#B15044",
table.border.bottom.color = "#B15044",
source_notes.font.size = 11
    )
Os 10 municípios com mais homicídios
acumulado desde do ano de 2002
Municípios Homicídios
Capital 27831
Grande São Paulo (exclui a Capital) 22576
Campinas 6145
São José dos Campos 5566
Piracicaba 4740
Santos 4535
Sorocaba 4330
Ribeirão Preto 4202
Bauru 1895
São José do Rio Preto 1347
Fonte:Secretaria De Segurança Pública Do Estado De São Paulo

Mapa homicídios por 1000 habitantes

#mapa_sp2 <- oco5 |> 
 # ggplot()+
  #geom_sf(aes(fill = tx_h), color = "white", 
  #        size = .1, show.legend = F) +
  #theme_void() +  
  #scale_fill_gradient2(low = "green", 
   #                    mid = "#F0E68C", 
    #                   high = "red",
     #                  midpoint = median(oco5$tx_h))+
  #labs(title = "                   Taxa de homicídio por cem mil habitantes em São Paulo no ano de 2021")



#b<- oco5 |> 
 # filter(
  #  tx_h != 0
  #) 


# fazenndo com manual de cores


#oco6 <- oco5 |> 
 # mutate(    
  #  concentracao = case_when(
   #   tx_h < 0.037 ~ "baixa",
    #  tx_h >= 0.038 & tx_h <= 0.093643 ~ "média",
     # tx_h >= 0.094  ~ "alta",
    
    #) )


#mapa_sp1 <- oco6 |> 
 # ggplot()+
 # geom_sf(
  #  aes(fill= concentracao), 
   # show.legend = TRUE,
    #color = "white", 
    #lwd =0.001
  #)+ scale_fill_manual(values = c("#8B0000", "#62BEBD","#D9B730" ))+
  #labs(title = "Taxa de homicídio por cem mil habitantes em São Paulo no ano de 2021")+
  #theme_void()


mapa_sp2

mapa_sp1

Nesse mapa foi utilizada uma metodologia diferente para conseguir vizualizar melhor as diferenças