Mostrando entradas con la etiqueta Provincias Dominicana. Mostrar todas las entradas
Mostrando entradas con la etiqueta Provincias Dominicana. Mostrar todas las entradas

19 nov 2017

5 pasos para crear mapas de República Dominicana en R


Paso 1. Descargar los documentos Shape para el país. Los mismos, están disponibles de forma gratuita, en la sección de informaciones cartográficas de la Oficina Nacional de Estadística. [Disponible: https://www.one.gob.do/informaciones-cartograficas]


Paso 2. Una vez descargamos los archivos “ShapeFiles 2010”, necesitamos instalar los siguientes paquetes en R.

install.packages("ggmap")
install.packages("rgdal")
install.packages("rgeos")
install.packages("maptools")
install.packages("dplyr")
install.packages("tidyr")
install.packages("tmap")

x <- c("ggmap", "rgdal", "rgeos", "maptools", "dplyr", "tidyr", "tmap", "ggplot2")

lapply(x, library, character.only = TRUE)

Paso 3. Una vez cargados los paquetes necesarios, redireccionamos el directorio de trabajo (a la carpeta donde hemos colocado los shapefile descargados) y cargamos el archivo .shp correspondiente a las regiones, provincia o municipio según corresponda.

C:\Users\Nerys Ramierz\Documents\Cursos\Curso R\R Mapas

map <- readOGR(dsn = "REGCenso2010.shp")


Observe, que las iniciales del documento (.shp), nos indican si se trata de provincia, regiones, barrios o municipios.  Ahora, utilizamos la opción plot, para representar el mapa del país. Dicho mapa reflejara las regiones del país, porque fue el archivo seleccionado. Observándose el siguiente resultado:

plot(map)



Paso 4. Ahora, debemos verificar el orden de los datos, para saber a que regiones corresponden los indicadores de cada vector. Para esto, utilizamos la opción map@data para poder entender en que forma introducir el dato correspondiente a cada región. 

map@data

0  01           REGIÓN CIBAO NORTE
1  02             REGIÓN CIBAO SUR
2  03        REGIÓN CIBAO NORDESTE
3  04        REGIÓN CIBAO NOROESTE
4  05              REGIÓN VALDESIA
5  06            REGIÓN ENRIQUILLO
6  07              REGIÓN EL VALLE
7  08                  REGIÓN YUMA
8  09               REGIÓN HIGUAMO
9  10 REGIÓN OZAMA O METROPOLITANA

En este, se verifica que debemos introducir un vector, cuyo primer valor, corresponda a la Región Cibao Norte, seguido de Cibao Sur y así sucesivamente hasta la Ozama, que es la última de la base de datos.

Ahora que sabemos el orden en como vamos a introducir los datos, usamos los datos de pobreza por regiones, del boletín de pobreza monetaria 2016, para introducir los datos provinciales. El SISDOM, publicado por el Ministerio de Economía, es una fuente rica en datos provinciales y regionales, por temáticas especificas. 

map$pobreza <-  c(25.9,30.4,27.9,37.2,38.4,55.6,56.9,28.2,37.3,23.6)

Paso 5. Ahora, utilizamos la función qtm, para representar los datos anteriores. Introduciendo como argumentos el shp shape cargado y los datos correspondientes fill

qtm(shp = map, fill = c("pobreza"))

Hasta aquí, ya hemos representado información geográfica de forma sencilla. Por lo que, nos dedicaremos a realizar algunas modificaciones que permite esta función, que nos pueden resultar de interés. Podemos cambiar los colores utilizados y el orden de intensidad de estos coloras a partir de las magnitudes representadas, utilizando la opción fill.palette [Reds; div;].

qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues")


Observe, que por default, el programa ordena la magnitud del color presentado de menor a mayor, para invertir esta opción, solo necesitamos colocar el signo de -, antes del paquete de colores indicado.

qtm(shp = map, fill = c("pobreza"), fill.palette = "-Blues")


Los colores que segmentan el territorio, también pueden modificarse. Por cuestiones de preferencia, también podríamos optar por quitar los bordes que limitan el territorio, mediante la opción borders.

qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues", borders = NULL)


O colocar dichos bordes de un color determinado:

qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues", borders = "White")


Las etiquetas de las regiones, se pueden agregar la opción tm_text, con el nombre de la variable que deseamos representar entre paréntesis tm_text("pobreza")

qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues", borders = "White") +
         tm_text("pobreza")


También, podemos colocar el nombre de las provincias, introduciendo un vector con los nombres correspondientes.

map$RegNom <- c("Cibao Norte", "Cibao Sur","Cibao Nordeste","Cibao                Noroeste","Valdesia","enrriquillo","El Valle","Yuma","Higuamo","Ozama")

qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues", borders = "White")+
                tm_text("RegNom", size=.7)


En caso de querer que la función imprima el nombre de la región, combinado con el calor correspondiente, podemos utilizar la función Paste de R, para generar este vector string y luego representarlo en el mapa. Observe que ahora aparece el argumento size, este, permite manejar el tamaño de las etiquetas.

map$RegNom1<-paste(map$RegNom,map$pobreza)

tm_text("RegNom1", size=.7)


Observe, que al tener la información sobre los niveles de pobreza, representados en cada una de las regiones, podemos optar por eliminar la leyenda del gráfico.

qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues", borders = "White")+
             tm_text("RegNom1", size=.7) +
             tm_layout(legend.show = FALSE,outer.margins=0)


Hasta ahora, el programa ha segmentado el territorio a partir de un criterio predefinido, no obstante, en muchos casos quisiéramos segmentar el territorio en grupos definidos, como por ejemplo quintiles, esto se logra introduciendo el argumento fill.style.

qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues", borders = "White",            fill.style="quantile"+
  tm_text("RegNom1", size=.7) 


qtm(shp = map, fill = c("pobreza"),  fill.palette = "Blues", borders = "White", fill.style="kmeans")


 También, especialmente los usuarios de latex, desearían guardar el mapa en forma de imagen, para evitar tener que generalo reiterada veces.

map1<-qtm(shp = map, ...)
save_tmap(map1, "World_map.png")

Combinar mapas

map1<-qtm(shp = map, fill = c("pobreza"), fill.palette = "Blues", title="Azul")
map2<-qtm(shp = map, fill = c("pobreza"), fill.palette = "div", title="Verde")

current.mode <- tmap_mode("plot")
tmap_arrange(map1, map2, ncol = 2, nrow = 1)


Esta combinación, nos permite representar diferentes variables, o la misma variable en distintos puntos temporales. Por ejemplo la pobreza en 2000 y 2015, o la pobreza con la indigencia.

map$pobreza <-  c(25.9,30.4,27.9,37.2,38.4,55.6,56.9,28.2,37.3,23.6)
map$indigencia <-  c(4.4, 5.7, 4, 8.9, 7, 16.3, 14.3, 6.4, 8.6, 5.3)
qtm(shp = map, fill = c("pobreza ", " indigencia"), fill.palette = c("Blues"), ncol = 2) + 
            tm_text(c("pobreza", "indigencia"))


También, podemos representar el estado de una variable en dos puntos temporales diferentes.

map$ta2015 <-  c(57.1,53.7,54.2,52.5,57.9,55.7,54.2,59.6,57.2,60.7)
map$ta2000 <-  c(54.5,52.7,51.0,52.7,51.6,46.0,46.9,53.3,57.8,61.1)

qtm(shp = map, fill = c("ta2000", "ta2015"), ncol=2, fill.palette = "Blues")+
    tm_text(c("ta2000", "ta2015"))


Además, se pueden introducir vectores lógicos, para obtener mapas que cumplan con determinada características. Por ejemplo, las provincias, donde la tasa de pobreza exceda el 30% de la población.

map$pobreza1 <- map$pobreza > 30
qtm(shp = map, fill = c("pobreza1"), fill.palette = "Blues")


También, podemos agregar subdivisiones o cargar diversas capa a los mapa.

map <- readOGR(dsn = "REGCenso2010.shp")
mapProv <- readOGR(dsn = "PROVCenso2010.shp")
mapBarrio <- readOGR(dsn = "BPCenso2010.shp")

tm_shape(map) +
  tm_borders(col = "black", lwd=2, lty = "solid") +

tm_shape(mapProv) +
  tm_borders(col = "grey40", lwd=1) +


A estaos niveles, se le pueden dar formatos y agregar texto:

map <- readOGR(dsn = "REGCenso2010.shp")
mapProv <- readOGR(dsn = "PROVCenso2010.shp")
mapBarrio <- readOGR(dsn = "BPCenso2010.shp")

tm_shape(map) +
  tm_fill("pobreza",style= "kmeans") +
  tm_text("REG", size=0.8) +
  tm_borders(col = "black", lwd=4, lty = "solid") +

tm_shape(mapProv) +
  tm_borders(col = "grey40", lwd=1) +
  tm_layout(bg.color="white",inner.margins=c(.02, .05, .02, .02))

tm_shape(mapBarrio)+
  tm_borders(col = "grey40", lwd=1)



tm_shape(map) +
   tm_polygons("pobreza",style="kmeans") +
   tm_facets(by="RegNom",free.coords=TRUE, drop.shapes=TRUE) +
   tm_layout(legend.show = FALSE, outer.margins=0)



Agradecimientos

A Johan de la Rosa, quien nos presentó la herramienta.

Referencias

Brunsdon, C. (2017). Creating Maps with tmap.

Tennekes, Martijn (2015). R-package tmap: Creating thematic maps in a flexible way. Consultado el 15/11/2017. Disponible en: http://von-tijn.nl/tijn/research/presentations/tmap_user2015.pdf .

Tennekes, Martijn;  Gombin, J.; Jeworutzki , S.; Russell , K. and Zijdeman, R. (2017). Package ‘tmap’

Lovelace, R.; Cheshire, J.; Oldroyd, R. (2015). Introduction to visualising spatial data in R.















8 may 2013

Dinámica demográfica y aspectos poblacionales de San José de Ocoa


Ocoa, una provincia deshabitada
“Dinámica demográfica y aspectos poblacionales”
Por. Nerys Ramírez

Ocoa es la provincia de mayor descrecimiento de su población. Según el último censo (2010), la población de San José de Ocoa era de 59,544 personas, unos -2,824 habitantes menos con respecto a los 62,368 registrados en el censo de 2002. Lo anterior significa una tasa media de crecimiento negativo de -0.59.[1] Esta reducción se ve incidida por tres fenómenos demográficos fundamentales: a. fecundidad (nacen menos personas); b. mortalidad (mueren más personas) y por último, c. las migraciones (provincia expulsora de migrantes con el saldo migratorio neto más negativo).

 Según rango de edad el 60% de la población tiene menos de 35 años y no existen diferencias significativas según zona de residencia (rural urbana), en ambas zonas el porcentaje de población menor de 35 años es de 67.2% y 67.7% respectivamente. La pirámide que población presentada en el gráfico 2 resume el comportamiento demográfico de la población, muestra evidencia de que la dinámica demográfica entre 2002 y 2010, contrario a lo sucedido a nivel nacional, ha incidido en un agotamiento de la población en la parte superior de la pirámide, esto como resultado del efecto migratorio negativo y al aumento de la mortalidad. La base de la pirámide muestra una expansión en igual periodo pero no como resultado de un incremento en el número de nacimientos sino un menor efecto demográfico. En palabras el efecto negativo de las migraciones y la mortalidad es superior al provocado por la reducción en el número de nacimientos.[2] (Obsérvese que la parte azul correspondiente a 2010 es más pequeña en las edades superiores a los 35 años de edad).

Gráfico  2 - San José de Ocoa: pirámide de población, por sexo, según grupo de edad, 2002 y 2010

Fuente: Oficina Nacional de Estadística, Censo poblacionales 2002 y 2010
El primer efecto demográfico de importancia es el número de nacimientos. Aunque la expansión de la base de la pirámide pudiera aportar evidencia a favor de un incremento de la natalidad en la provincia, las estadísticas vitales (presentadas en la próxima tabla) muestran que el número de nacimientos se ha reducido considerablemente desde el 2001 en más del -50% (Es importante hacer un paréntesis para resaltar que el 97.8% de los nacimientos de la provincia se registran en el municipio cabecera de la provincia en parte como resultado de las enormes privaciones en término de salud que se vive en los campos de Ocoa).[1] La disminución en la natalidad ha provocado que la población menor de un año disminuya de 1,375 a solo 919 entre 2002 y 2010.

Tabla 1 - San José de Ocoa: Estadísticas vitales, por año. 2001-2011
* Cifras preliminares
Fuente: Oficina Nacional de Estadística, Estadísticas Vitales. 2000-2011
El segundo elemento que incide en la dinámica demográfica lo representan las defunciones (muertes). La tasa de mortalidad (muertos/1,000 habitantes) se incrementó de 2.63 a 3.21 entre 2002 y 2010.[2] Tal como se indica en la tabla 1, el número de muertes anuales mostró durante el periodo una tasa positiva de crecimiento del +28.2%.[3] Según grupos específicos de edad y realizando una comparación respecto al 2002 se observa en la provincia un incremento de la mortalidad infantil y en los grupos de menor edad.

 Gráfico  2 - San José de Ocoa: Tasa especifica de mortalidad, 2002 y 2010
Fuente: Cálculos propios con datos del Censo y Estadísticas Vitales publicada por ONE.
 
El tercer efecto determinante de la estructura de la población es la migración. Según datos de la ONE (2009), San José de Ocoa  es una provincia expulsora de migrantes con la tasa migratoria neta (negativa) más elevada del país, en palabras Ocoa es la provincia donde más gente se va en relación al total de la población de la provincia.[1] Santo Domingo, Peravia y San Cristobal son las principales provincias receptoras de los migrantes ocoeños. Según el censo 2010 el 13.4% de la población de la provincia admite haber nacido en otro lugar, el 61.7% de estos son hombres, lo que presiona aún más la alta razón de masculinidad observada en la provincia.
Al observar la dinámica interna de la población se observa anual una importante reducción de la población en las comunidades rurales (salvo el Naranjal). Muchas de estas personas migran a las periferias de la zona urbana del Municipio Cabecera de la provincia que dada las condiciones geográficas presenta importantes limitante de espacios físicos no vulnerables. Lo anterior se refleja en que al 2002 unos 39 de cada 100 ocoeños vivían en el municipio cabecera, al 2010 el número se ha incrementado a 66 de cada 100 ocoeños Lo que ha ocasionado que la densidad poblacional (Habitantes por Km2) sea bastante superior en el municipio cabecera (312 Hab./Km2). (Sería importante considerar el efecto del modelo de crecimiento económico).[2]
Gráfico  1 - San José de Ocoa: Población y ritmo de crecimiento promedio anual, por demarcación geográfica, según últimos censos, 2002 y 2010
En términos generales la disminución de la población responde a tres fenómenos demográficos concretos: menos nacimientos, más muertos y mayor flujo migratorio negativo. En términos migratorios (aunque el motivo del presente artículo no es describirlas) se puede afirmar que la alta incidencia de la pobreza junto a deficientes servicios públicos (especialmente en las zonas rurales) y las rigideces del mercado laboral informal y de bajos ingresos se constituye en los principales factores.[1] En el caso específico de la pobreza, el 50.2%[2] de la población presenta situación de pobreza monetaria y 9.2% una situación de indigencia, lo que significa que la mitad de los ocoeños no obtienen recursos suficientes para adquirir una canasta mínima de bienes y 9 de cada 100 no obtiene ingresos para comer dignamente desde el punto de vista nutricional. Podríamos señalar que la gente huye de la pobreza, sin embargo provincias más pobres que Ocoa tienen menor tasa neta de migración. (representa el primer elemento a profundizar)
 En conclusión la dinámica demográfica que incide sobre la disminución de la población en Ocoa se resume en una disminución de la natalidad, aumento de las migraciones y del número de defunciones anuales. Una consecuencia directa de dicha dinámica es el incremento de la dependencia económica por medio de la reducción de la personas en edad de trabajar, en 2002 el 63.5% de la población de la provincia tenía entre 15 y 64 años, al 2010 esta proporción se redujo a 59. (la estructura económica sería un segundo elemento)
 
Referencias Bibliográficas.
 Morillo, Antonio (2011). Evolución, determinantes agregados y dimensión espacial de la pobreza monetaria en la República Dominicana, 2000-2011. Ministerio de Economía, Planificación y Desarrollo. Disponible en: http://www.stp.gov.do/eWeb%5CArchivos%5CLibros%5CEvolucion_determinantesydimension_espacial_pobreza_monetaria_RD.pdf
 Oficina Nacional de Estadisticas, ONE. Bases de datos online Censo 2010 y 2002. Santo Domingo, RD.
Oficina Nacional de Estadisticas, ONE. (2012). Informe Preliminares del Censo 2010. Santo Domingo, RD.
Oficina Nacional de Estadisticas, ONE. (2012). Informes del Censo, Vol. 1. Santo Domingo, RD.
Oficina Nacional de Estadisticas, ONE. (2011). Estadisticas Vitales 2000-2011. Santo Domingo, RD.
Oficina Nacional de Estadisticas, ONE. (2009). Migraciones interprovinciales en República Dominicana. 1997-2002. Santo Domingo, RD.

[1] Sin dejar de lado los jóvenes que migran por razones educativas, una vez terminan la educación media.
[2] Morillo (2011). Ministerio de Economía Planificación y Desarrollo


[1] El 13.7% de la población de la provincia vivía en otros lugares
[2] Sin embargo es importante resaltar que la expansión urbana del municipio cabecera ha sido una de las menores a nivel nacional, esto se fleja en ONE (2010). Expansión urbana en la Republica Dominicana, 1988-2006. Lo anterior aporta evidencia de que no todos los ocoeños de las zonas rurales migran al municipio cabecera



[1] Esta enorme cantidad responde en parte a la concentración de los servicios de salud, es decir en ningún campo de la provincia están dadas las condiciones para realizar un parto, lo que resalta altas privaciones en los servicios de salud y un costo adicionar en lo que respecta al acceso a la salud.
[2] Cálculos propios con datos del Censo y Estadísticas Vitales publicada por ONE.
[3] Un ajuste estadístico que no se realiza en este análisis y es importante tener presente es que el aumento en el número de defunciones puede ser el resultado de mejoras en los registros estadísticos.



[1] Oficina Nacional de Estadisticas, ONE. (2012). Informes del Censo, Vol. 1. Santo Domingo, RD. Pág. 34
[2] Un elemento importante en el agotamiento de la punta de la pirámide es la mayor incidencia de la mortalidad en los hombres, que presentan mayor peso en la composición de la población de la provincia.

Recodificación de Variables en R

  La recodificación de variables es una tarea esencial en el análisis de datos que nos permite transformar datos continuos en categorías más...