Autor : Gianfranco David Chamorro Rodriguez
Correo : gianfranco.chamorror@gmail.com
Canal : Curso
La medición monetaria utiliza el gasto como indicador de bienestar, el cual está compuesto por las compras, el autoconsumo, el autosuministro, los pagos en especie, las transferencias de otros hogares y las donaciones públicas. Según el enfoque monetario, se considera como pobres a las personas que residen en hogares cuyo gasto per cápita es insuficiente para adquirir una canasta básica de alimentos y no alimentos (vivienda, vestido, educación, salud, transporte, etc.). Son pobres extremos aquellas personas que integran hogares cuyos gastos per cápita están por debajo del costo de la canasta básica de alimentos.
En el proceso de la medición de la pobreza monetaria se estiman tres Ãndices desarrollados por Foster, Greer y Thorbecke (1984). El primero se refiere a la incidencia de la pobreza, que representa la proporción de pobres o de pobres extremos como porcentaje del total de la población. Dicho de otra manera, determina la proporción de la población cuyo consumo se encuentra por debajo del valor de la lÃnea de pobreza o del valor de la lÃnea de extrema pobreza, según sea el caso.
Se trabaja con la información brindada por la Encuesta Nacional de Hogares del año 2020.
rm(list=ls())
#LibrerÃa necesaria
library(haven)
library(survey)
## Loading required package: grid
## Loading required package: Matrix
## Loading required package: survival
##
## Attaching package: 'survey'
## The following object is masked from 'package:graphics':
##
## dotchart
library(sf)
## Linking to GEOS 3.9.3, GDAL 3.5.2, PROJ 8.2.1; sf_use_s2() is TRUE
library(sp)
library(purrr)
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2
## ──
## ✔ ggplot2 3.4.0 ✔ dplyr 1.0.10
## ✔ tibble 3.1.8 ✔ stringr 1.5.0
## ✔ tidyr 1.3.0 ✔ forcats 0.5.2
## ✔ readr 2.1.3
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ tidyr::expand() masks Matrix::expand()
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ✖ tidyr::pack() masks Matrix::pack()
## ✖ tidyr::unpack() masks Matrix::unpack()
library(ggplot2)
library(ggrepel)
library(readxl)
library(dplyr)
direccion <- "C:/Users/user/Desktop/RPUBS" # Definimos la dirección de trabajo
setwd(direccion)
sumaria <- read_dta('sumaria-2020.dta') # Utilizamos nuestra BD en formato dta
# Crearemos la variable departamento utilizando los dos primeros digitos de la variable ubigeo
sumaria$departamento <- substr(sumaria$ubigeo, start = 1, stop = 2)
str(sumaria$departamento)
## chr [1:34490] "01" "01" "01" "01" "01" "01" "01" "01" "01" "01" "01" "01" ...
## - attr(*, "label")= chr "ubicación geográfica"
## - attr(*, "format.stata")= chr "%6s"
mode(sumaria$departamento)<-"numeric"
#Creamos als etiquetas de los departamentos
sumaria$departamento<-factor(sumaria$departamento,
levels = c(1:25),
labels = c("Amazonas",
"Ancash",
"Apurimac",
"Arequipa",
"Ayacucho",
"Cajamarca",
"Callao",
"Cusco",
"Huancavelica",
"Huanuco",
"Ica",
"Junin",
"La Libertad",
"Lambayeque",
"Lima",
"Loreto",
"Madre de Dios",
"Moquegua",
"Pasco",
"Piura",
"Puno",
"San Martin",
"Tacna",
"Tumbes",
"Ucayali"))
depas<-table(sumaria$departamento)
depas
##
## Amazonas Ancash Apurimac Arequipa Ayacucho
## 1222 1463 954 1585 1217
## Cajamarca Callao Cusco Huancavelica Huanuco
## 1455 1004 1286 1047 1277
## Ica Junin La Libertad Lambayeque Lima
## 1527 1530 1575 1470 4449
## Loreto Madre de Dios Moquegua Pasco Piura
## 1475 612 989 902 1680
## Puno San Martin Tacna Tumbes Ucayali
## 1153 1292 1329 832 1165
table(sumaria$pobreza)
##
## 1 2 3
## 1452 6272 26766
#Creamos una variable que identifique los hogares cuyo gasto per cápita se encuentre por debajo de la lÃnea de pobreza y aquellos que no.
sumaria$pobre <- ifelse(sumaria$pobreza<=2,"Hogar Pobre", "Hogar no Pobre")
table(sumaria$pobre)
##
## Hogar no Pobre Hogar Pobre
## 26766 7724
# Indicamos que trabajamos con una encuesta nacional: Conglomerado, Estrato y Factor de expansión
enaho = svydesign(data=sumaria, id=sumaria$conglome, strata=sumaria$estrato, weights=sumaria$factor07)
#Tabla Nacional
tabla <- svymean(~pobre, enaho, deff=F, na.rm=T); tabla
## mean SE
## pobreHogar no Pobre 0.76733 0.0046
## pobreHogar Pobre 0.23267 0.0046
#Tabla Departamental
mapa <- svyby(~pobre,~departamento, enaho, svymean, deff=F, na.rm=T);
mapa
## departamento pobreHogar no Pobre pobreHogar Pobre
## Amazonas Amazonas 0.7266187 0.27338128
## Ancash Ancash 0.7665367 0.23346326
## Apurimac Apurimac 0.7150096 0.28499037
## Arequipa Arequipa 0.8621021 0.13789788
## Ayacucho Ayacucho 0.6387135 0.36128653
## Cajamarca Cajamarca 0.6598094 0.34019059
## Callao Callao 0.7493576 0.25064239
## Cusco Cusco 0.7667031 0.23329689
## Huancavelica Huancavelica 0.6272333 0.37276671
## Huanuco Huanuco 0.6598412 0.34015879
## Ica Ica 0.9448113 0.05518866
## Junin Junin 0.7637462 0.23625384
## La Libertad La Libertad 0.7330103 0.26698965
## Lambayeque Lambayeque 0.8873103 0.11268975
## Lima Lima 0.8026875 0.19731249
## Loreto Loreto 0.7534459 0.24655410
## Madre de Dios Madre de Dios 0.9195100 0.08048996
## Moquegua Moquegua 0.8528832 0.14711683
## Pasco Pasco 0.6319068 0.36809320
## Piura Piura 0.7245396 0.27546037
## Puno Puno 0.6479051 0.35209487
## San Martin San Martin 0.7949220 0.20507798
## Tacna Tacna 0.8119410 0.18805905
## Tumbes Tumbes 0.7641804 0.23581960
## Ucayali Ucayali 0.8518581 0.14814187
## se.pobreHogar no Pobre se.pobreHogar Pobre
## Amazonas 0.021135089 0.021135089
## Ancash 0.015833771 0.015833771
## Apurimac 0.026722234 0.026722234
## Arequipa 0.013172971 0.013172971
## Ayacucho 0.021374812 0.021374812
## Cajamarca 0.021192906 0.021192906
## Callao 0.020045347 0.020045347
## Cusco 0.021870590 0.021870590
## Huancavelica 0.026288378 0.026288378
## Huanuco 0.023414945 0.023414945
## Ica 0.008628169 0.008628169
## Junin 0.019549519 0.019549519
## La Libertad 0.017665231 0.017665231
## Lambayeque 0.011066286 0.011066286
## Lima 0.010914632 0.010914632
## Loreto 0.018771247 0.018771247
## Madre de Dios 0.025843808 0.025843808
## Moquegua 0.017564504 0.017564504
## Pasco 0.029404266 0.029404266
## Piura 0.019180286 0.019180286
## Puno 0.022049650 0.022049650
## San Martin 0.020732363 0.020732363
## Tacna 0.018286760 0.018286760
## Tumbes 0.022554905 0.022554905
## Ucayali 0.016681138 0.016681138
#Seleccionamos las columnas que utilizaremos en nuestro mapa
mapa <- select(mapa, "departamento", "pobreHogar Pobre")
save(mapa, file = paste(direccion,"mapa.RData",sep="/"))
load(paste(direccion,"mapa.RData",sep="/"))
colnames(mapa)
## [1] "departamento" "pobreHogar Pobre"
#Modificamos los nombres de las variables para unirlo con la base de datos del mapa
colnames(mapa) = c("NOMBDEP", "Pobreza")
peru_d <- st_read("DEPARTAMENTOS_inei_geogpsperu_suyopomalia.shp")
## Reading layer `DEPARTAMENTOS_inei_geogpsperu_suyopomalia' from data source
## `C:\Users\user\Desktop\RPUBS\DEPARTAMENTOS_inei_geogpsperu_suyopomalia.shp'
## using driver `ESRI Shapefile'
## Simple feature collection with 25 features and 79 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -81.32823 ymin: -18.35093 xmax: -68.65228 ymax: -0.03860597
## Geodetic CRS: WGS 84
#Mapa del Perú
ggplot(data = peru_d) + geom_sf()
mapa$NOMBDEP <- toupper(mapa$NOMBDEP)
#Histograma de la Incidencia de Pobreza Monetaria
perupobreza = data.frame(merge(peru_d,mapa, by="NOMBDEP"))
hist(perupobreza$Pobreza, main= "Histograma" ,ylab = "Frecuencia", xlab ="Incidencia")
#Mapa de Pobreza Monetaria por Incidencia
ggplot(data = peru_d) + ggplot2::geom_sf(data = peru_d) + aes(fill = perupobreza$Pobreza) + scale_fill_gradient(guide_legend(title = "Incidencia de la pobreza")) + labs(title = "Incidencia de Pobreza Monetaria", subtitle ="Perú 2020" ,caption = "Fuente: Encuesta Nacional de Hogares (2020)
Elaboración propia", x="Longitud", y="Latitud") + theme(plot.subtitle=element_text(hjust=0.5))
perupobreza$Rango <- as.factor (ifelse(perupobreza$Pobreza<=0.1476, "1", ifelse(perupobreza$Pobreza>0.1476 & perupobreza$Pobreza<=0.2334, "2", ifelse(perupobreza$Pobreza>0.2334 & perupobreza$Pobreza<=0.2588, "3", ifelse(perupobreza$Pobreza>0.2588 & perupobreza$Pobreza<=0.34016, "4", ifelse(perupobreza$Pobreza>0.34016, "5",NA))))))
table(perupobreza$Rango)
##
## 1 2 3 4 5
## 5 5 5 5 5
perupobreza$Rango<-factor(perupobreza$Rango,
levels = c(1:5),
labels = c("Muy Bajo",
"Bajo",
"Medio",
"Alto",
"Muy Alto"))
Nivel = perupobreza$Rango
#Mapa de Pobreza Monetaria por Nivel de Incidencia
ggplot(data = peru_d) + ggplot2::geom_sf(data = peru_d) + aes(fill = Nivel) + scale_colour_continuous(guide_legend(title = "Incidencia")) + labs(title = "Incidencia de Pobreza Monetaria", subtitle ="Perú 2020" , caption = "Elaboración propia", x="Longitud", y="Latitud") + theme(plot.subtitle=element_text(hjust=0.5))