library (rgdal)
RM<-readOGR("/Users/mac/Downloads", layer="terrritorio_n")
## OGR data source with driver: ESRI Shapefile
## Source: "/Users/mac/Downloads", layer: "terrritorio_n"
## with 32 features
## It has 3 fields
#plot(RM)
Los datos que necesitamos se encuentran en una hoja diferente del documento de excel.
library(readxl)
base_carencia_soc<- read_xlsx("/Users/mac/Downloads/Anexo_2016-2020.xlsx", sheet = "Cuadro 4B" )
## New names:
## * `` -> ...1
## * `` -> ...2
## * `` -> ...3
## * `` -> ...5
## * `` -> ...6
## * ...
## Eliminamos algunas de los primeros renglones porque no son útiles
base_carencia_soc_1<- as.data.frame( base_carencia_soc[-c(1:5),-c(1:2)])
base_carencia_soc_2<- as.data.frame( base_carencia_soc_1[-c(33:36),])
### También renombraremos las columnas para manipular la base con mayor facilidad
names(base_carencia_soc_2)[1]<- "Entidad_Federativa"
names(base_carencia_soc_2)[2]<- "C_soc_2016"
names(base_carencia_soc_2)[3]<- "C_soc_2018"
names(base_carencia_soc_2)[4]<- "C_soc_2020"
####### Previo al uso de "merge"
base_carencia_soc_2$c_ent <- 01:32
length(base_carencia_soc_2$c_ent)
## [1] 32
length(RM@data$CVE_ENT)
## [1] 32
RM@data$CVE_ENT<-as.numeric(RM@data$CVE_ENT)
joint_car_soc<-merge(x=RM@data, y=base_carencia_soc_2, by.x ="CVE_ENT", by.y= "c_ent", sort=FALSE)
RM@data$C_soc<-as.numeric(joint_car_soc$C_soc_2020)
library(leaflet)
levels(cut(RM@data$C_soc,4))
## [1] "(14.1,19.4]" "(19.4,24.7]" "(24.7,30.1]" "(30.1,35.4]"
cortes_cs <- c(0,19.4,24.7,30.1,Inf)
## generamos la paleta
colores_cs <- colorBin( palette="Reds", domain= RM$C_soc, na.color="transparent", bins=cortes_cs)
library(htmltools)
#### le indicamos lo que queremos que nos despliegue
textos_cs <- paste(
"Entidad : ", RM$NOMGEO,"<br/>",
"% Población con al menos una carencia social: ", round(RM@data$C_soc,3),"<br/>") %>% lapply(htmltools::HTML)
leaflet(data=RM) %>% addTiles() %>% addPolygons(label = textos_cs, fillColor = colores_cs(RM$C_soc), color = "white",
fillOpacity = .7)