Introducción

Los datos que vamos a analizar provienen del VI Censo Nacional de Comisarías realizado en el año 2017 por el Instituto Nacional de Estadística e Informática. El objetivo primordial de dicho censo fue conocer mejor la infraestructura y equipamiento con el que cuentan los locales donde funcionan las Comisarías de la Policía Nacional del Perú. Entre las principales características a evaluar fueron:

Pueden conocer más sobre el ánalisis final de este censo en la publicación oficial del INEI: PERÚ: VI CENSO NACIONAL DE COMISARÍAS 2017, Resultados Definitivos.

Análisis Descriptivo

Lectura de Datos

El archivo con la información descargada del INEI se encuentra en la carpeta datos y tiene por nombre CensoComisarias.sav. El formato de este archivo corresponde a bases de datos registradas en el software SPSS, por lo que, se debe importar al R haciendo uso del paquete foreign.

# install.packages("foreign") 
library(foreign) 
datos <-  read.spss("../datos/CensoComisarias.sav", to.data.frame=TRUE)

Veamos cuanta información tenemos,

dim(datos)
## [1] 1495  280

Existen 1495 registros y 280 variables.

Ahora, veamos un pequeño extracto de los datos.

datos[1:5, 4:6]
##                               NOMBREDI               INF109    INF109A
## 1 RUPA-RUPA                            De 40001 - 80000 Hab  Distrital
## 2 MARIANO DAMASO BERAUN                 De 5000 - 10000 Hab  Distrital
## 3 JOSE CRESPO Y CASTILLO               De 20001 - 40000 Hab  Distrital
## 4 TOCACHE                               De 5000 - 10000 Hab Provincial
## 5 NUEVO PROGRESO                        De 5000 - 10000 Hab  Distrital
knitr::kable(datos[1:5, 4:6])
NOMBREDI INF109 INF109A
RUPA-RUPA De 40001 - 80000 Hab Distrital
MARIANO DAMASO BERAUN De 5000 - 10000 Hab Distrital
JOSE CRESPO Y CASTILLO De 20001 - 40000 Hab Distrital
TOCACHE De 5000 - 10000 Hab Provincial
NUEVO PROGRESO De 5000 - 10000 Hab Distrital

Jurisdicción

Alcance de Jurisdicción

cuadro1 <- as.data.frame(table(datos$INF109))
cuadro2 <- as.data.frame(prop.table(table(datos$INF109)))

names(cuadro1) <- c("Categoría", "Frecuencia")
cuadro1$Porcentaje <- cuadro2$Freq

knitr::kable(cuadro1)
Categoría Frecuencia Porcentaje
Menos de 5000 Hab 288 0.1926421
De 5000 - 10000 Hab 329 0.2200669
De 10001 - 20000 Hab 290 0.1939799
De 20001 - 40000 Hab 248 0.1658863
De 40001 - 80000 Hab 196 0.1311037
De 80001 a más Hab 144 0.0963211

El siguiente gráfico interactivo es gracias a la función ggplotly del paquete plotly. Puedes revisar más aquí https://plot.ly/r/.

library(ggplot2)
graf1 <- ggplot(datos, mapping = aes(x = INF109)) +
  geom_bar() +
  xlab("Habitantes") + ylab("Frecuencia") +
  theme(axis.text.x = element_text(angle = 12))

# Gráfico Interactivo
library(plotly)
ggplotly(graf1)

Alcance de Jurisdicción de las Comisarías

Tipo de Jurisdicción

knitr::kable(table(datos$INF109A), col.names = c("Categoría", "Frecuencia"))
Categoría Frecuencia
Nacional 2
Regional 29
Provincial 139
Distrital 1241
Otros 84
library(ggplot2)
ggplot(datos, mapping = aes(x = INF109A)) +
  geom_bar(color = "black", fill = "red", alpha = 0.6) +
  xlab("") + ylab("Frecuencia")
Tipo de Jurisdicción de las Comisarías

Tipo de Jurisdicción de las Comisarías

Locación de las Comisarías

Las siguientes visualizaciones interactivas han sido posibles gracias al paquete leaflet. Si quieres conocer más sobre cómo usar esto en R, te recomiendo revisar Leaflet para R o la página oficial de la Librería JavaScript Leaflet.

A Nivel Nacional

library(leaflet)
leaflet() %>% 
  addTiles() %>% 
  addMarkers(lng = as.numeric(as.character(datos[,280])),
             lat = as.numeric(as.character(datos[,279])),
             clusterOptions = markerClusterOptions())

Este reporte fue elaborado usando rmarkdown. Anímate a probarlo!

Por Jurisdicción

Por Alcance de Jurisdicción