Capítulo 8 Variable cartografiada en zona seleccionada
El siguiente texto ejemplifica la ejecución del código seleccionando la variable que se quiere estudiar
’— title: “Variable cartografiada por manzana zona seleccionada”
author: “Claudia Guerrero S”
date: “2/04/2021”
output: html_document: df_print: paged pdf_document: default
params:
’#=======================#
’# Render Function: #
’#=======================#
estilo: label: “Estilo” value: jenks input: select choices: [pretty,equal,quantile,sd,kmeans,jenks,fisher] varname: label: “Variable” value: P_60YMAS input: select choices: [POBTOT,POBFEM,POBMAS,P_0A2,P_0A2_F,P_0A2_M,P_3YMAS,P_3YMAS_F,P_3YMAS_M,P_5YMAS,P_5YMAS_F,P_5YMAS_M,P_12YMAS,P_12YMAS_F,P_12YMAS_M,P_15YMAS,P_15YMAS_F,P_15YMAS_M,P_18YMAS]
entidad: label: “Entidad Federativa” value: Coahuila de Zaragoza input: select choices: [Aguascalientes,Baja California,Baja California Sur,Campeche,Coahuila de Zaragoza,Colima,Chiapas,Chihuahua,Ciudad de México,Durango,Guanajuato,Guerrero,Hidalgo,Jalisco,México,Michoacán de Ocampo,Morelos,Nayarit,Nuevo León,Oaxaca,Puebla,Querétaro,Quintana Roo,San Luis Potosí,Sinaloa,Sonora,Tabasco,Tamaulipas,Tlaxcala,Veracruz de Ignacio de la Llave,Yucatán,Zacatecas]
municipio: label: “Municipio” value: “Torreón”
’—
8.1 Importación de datos cartográficos
Censo de Población y Vivienda 2020 2020 2.65 GB https://inegi.org.mx/contenidos/productos//prod_serv/contenidos/espanol/bvinegi/productos/geografia/marcogeo/889463807469_s.zip Ficha de información https://inegi.org.mx/app/biblioteca/ficha.html?upc=889463807469
Se descarga y se descomprime localmente Se crea una carpeta para los datos geográficos
#La ruta para el mapa de México se toma del Marcogeostadístico nacional
<-"D:/Documents/Claudia/Midropbox/Investigacion y escritos/Marcogeoestadisticonacional/mg_sep2019_integrado/conjunto_de_datos"
rutam<-"D:/Documents/Claudia/Midropbox/Investigacion y escritos/Censo2020/"
rutamc
<-read.csv(paste0(rutamc,"marcogeoentidad.csv"),header=TRUE, sep=",",encoding="UTF-8")
geoentidades
<-read.csv(paste0(rutamc,"municipios.csv"),header=TRUE, sep=",",encoding="latin")
municipios<-subset(municipios,municipios$NOM_ENT %in% c(params$entidad))
municipios <-subset(municipios,municipios$NOM_MUN %in% c(params$municipio))
municipios <-municipios$NOM_MUN
titulmun<-municipios$MUN
nummun
<-"D:/Documents/Claudia/Midropbox/Investigacion y escritos/Censo2020/889463807469_s"
rutamc
<-substr(geoentidades$NUM_ENT,1,2)
codent<-sprintf("%02d%s", as.numeric(gsub("[^0-9]+", "", codent)), gsub("[0-9]+", "", codent))
codent
$COD_ENT<-codent
geoentidades<-subset(geoentidades,geoentidades$NOM_ENT %in% c(params$entidad))
geoentidades <-geoentidades$COD_ENT
codent
<-"D:/Documents/Claudia/Midropbox/Investigacion y escritos/Censo2020/889463807469_s/"
rutamc<-geoentidades$ARCHENT
filename
<-paste0(geoentidades$COD_ENT,"mun")
filemun<-paste0(geoentidades$COD_ENT,"a")
fileloc<-paste0(geoentidades$COD_ENT,"m")
filemza<-paste0(rutamc,filename,".zip")
url<- tempfile()
temp2 unzip(url, exdir = temp2)
<-file.path(temp2)
rut<-paste0(rut,"/conjunto_de_datos")
rutamun
<- readOGR(rutamun,filemun, use_iconv = TRUE, encoding = "latin1") basemapamun
## OGR data source with driver: ESRI Shapefile
## Source: "C:\Users\Claudia.Guerrero\AppData\Local\Temp\RtmpmWrTxw\file1d388846591\conjunto_de_datos", layer: "05mun"
## with 38 features
## It has 4 fields
<-sprintf("%03d%s", as.numeric(gsub("[^0-9]+", "", nummun)), gsub("[0-9]+", "", nummun))
snummun
<-subset(basemapamun,basemapamun$CVE_MUN %in% c(snummun))
basemapamun<- readOGR(rutamun,fileloc, use_iconv = TRUE, encoding = "latin1") basemapaloc
## OGR data source with driver: ESRI Shapefile
## Source: "C:\Users\Claudia.Guerrero\AppData\Local\Temp\RtmpmWrTxw\file1d388846591\conjunto_de_datos", layer: "05a"
## with 1882 features
## It has 5 fields
<-subset(basemapaloc,basemapaloc$CVE_MUN %in% c(snummun))
basemapaloc<- readOGR(rutamun,filemza, use_iconv = TRUE, encoding = "latin1") basemapamza
## OGR data source with driver: ESRI Shapefile
## Source: "C:\Users\Claudia.Guerrero\AppData\Local\Temp\RtmpmWrTxw\file1d388846591\conjunto_de_datos", layer: "05m"
## with 75827 features
## It has 8 fields
<-subset(basemapamza,basemapamza$CVE_MUN %in% c(snummun))
basemapamza
<-"D:/Documents/Claudia/Midropbox/Investigacion y escritos"
rutvar
<-read.csv(paste0(rutvar,"/Censo2020/","variablescensales.csv"),header=TRUE, sep=",",encoding="UTF-8") variablescensales
8.2 Importación de datos censales
En el sitio del INEGI se encuentran los resultados del CENSO 2020 para cada una de las entidades de la población https://www.inegi.org.mx/programas/ccpv/2020/default.html#Datos_abiertos
Principales resultados por AGEB y manzana urbana
Ejemplo. Aguascaliente
https://www.inegi.org.mx/contenidos/programas/ccpv/2020/datosabiertos/ageb_manzana/ageb_mza_urbana_01_cpv2020_csv.zip
Para recuperar los datos censales a nivel estatal:
En el archivo se registra la población total de la entidad cuando en el nombre de la localidad aparece la leyenda “Total de la Entidad”
<-geoentidades$COD_ENT
codent
<-paste0("https://www.inegi.org.mx/contenidos/programas/ccpv/2020/datosabiertos/ageb_manzana/ageb_mza_urbana_",codent,"_cpv2020_csv.zip")
url
<- tempfile()
temp <- tempfile()
temp2 download.file(url, temp)
unzip(zipfile = temp, exdir = temp2)
<-file.path(temp2)
rut<-paste0(rut,"/","ageb_mza_urbana_",codent,"_cpv2020","/","conjunto_de_datos","/","conjunto_de_datos_ageb_urbana_",codent,"_cpv2020.csv")
filename
<- read.csv(filename,header=TRUE, sep=",",encoding="UTF-8")
censonalnames(censonal)[1] <- "CVE_ENT"
#Datos de toda la entidad uso del campo nom_loc para identificar los valores de las variables a nivel estatal
<-subset(censonal,censonal$NOM_ENT %in% c(params$entidad))
censonal
<-subset(censonal,censonal$MUN %in% c(nummun))
censonal
`%notin%` <- Negate(`%in%`)
<-censonal[censonal$AGEB %notin% c("0000"),]
censonal
<-substr(censonal$CVE_ENT,1,2)
codent<-sprintf("%02d%s", as.numeric(gsub("[^0-9]+", "", codent)), gsub("[0-9]+", "", codent))
codent
<-substr(censonal$MUN,1,3)
codmun<-sprintf("%03d%s", as.numeric(gsub("[^0-9]+", "", codmun)), gsub("[0-9]+", "", codmun))
codmun
<-substr(censonal$LOC,1,4)
codloc<-sprintf("%04d%s", as.numeric(gsub("[^0-9]+", "", codloc)), gsub("[0-9]+", "", codloc))
codloc
<-substr(censonal$AGEB,1,4)
codageb
<-substr(censonal$MZA,1,3)
codmza<-sprintf("%03d%s", as.numeric(gsub("[^0-9]+", "", codmza)), gsub("[0-9]+", "", codmza))
codmza
$CVEGEO<-paste0(codent,codmun,codloc,codageb,codmza)
censonal
# censonal <-subset(censonal,censonal$NOM_ENT %in% #c(params$entidad))
#Ahora el mapa tiene el dato de las 198 variables del censo
#Conversión a número
= c(11:229)
cols %<>% lapply(function(x) as.integer(as.character(x)))
censonal[,cols]
#censonal$CVEGEO
%<>% lapply(function(x) x/censonal$POBTOT)
censonal[,cols]
<-merge(basemapamza,censonal, by="CVEGEO", all.x =TRUE) basemapa
La selección de la zona se realiza en el sitio del INEGI
En la opción de los Servicios y Espacio y datos de México https://www.inegi.org.mx/app/mapa/espacioydatos/#
Se utiliza la herramienta del polígono para seleccionar el área que se quiere estudiar y los distintos niveles de zoom son los que dan las capas disponibles.
Para la capa de las manzanas se requiere un zoom de 16 y se puede solicitar que el archivo se enviado a un correo electrónico.
El archivo en cuestión se descomprime en la máquina personal y desde ahí se lee el el que contiene la capa correspondiente
Una vez que se lee el mapa que ya habíamos creado con los valores cartográficos y censales para la entidad y municipio seleccionado en los parámetros, se obtiene de él el subconjunto espacial de la zona seleccionada, como un subconjunto de la matriz completa
<-"D:/Documents/Claudia/Midropbox/Investigacion y escritos/Censo2020/zona"
rutaz<-"INEGI_Manzanas_"
filez
<- readOGR(rutaz,filez, use_iconv = TRUE, encoding = "latin1") basemapaz
## OGR data source with driver: ESRI Shapefile
## Source: "D:\Documents\Claudia\Midropbox\Investigacion y escritos\Censo2020\zona", layer: "INEGI_Manzanas_"
## with 100 features
## It has 80 fields
<- spTransform(basemapaz, CRS(proj4string(basemapa))) # transform CRS
basemapaz
<- basemapa[basemapaz, ]
mapazon
<-mapazon basemapa
8.3 Variables en zona seleccionada
Torreón
P_60YMAS Población de 60 años y más
El estilo fisher crea grupos con la máxima homogeneidad
8.4 Video
Este proceso se detalla en el siguiente video