1 Programa Juntos Perú

1.1 2016

A continuación se presenta la base de datos del programa Juntos Perú 2016.

setwd("D:/Libros/Seminarios/Construccion indicadores economicos sociales R/5 Beneficiarios programa juntos/Data Juntos")
juntos16 <- as.data.frame(sjlabelled::read_stata("enaho01-2016-700.dta"))
head(juntos16)

El programa lleva por nombre p710_04 dentro del diccionario de la base de datos. Lo primero será buscar a los beneficiarios del programa, en este caso serán catalogados con un “sí” aquellos que participen del mismo y con un “no” en el caso contrario.

# Obsevar valores nulos
table(juntos16$p710_04, useNA = c("ifany"))
## 
##     0     1  <NA> 
## 29856  4774  1155
# Reemplazar valores nulos por ceros
juntos16$p710_04 <- ifelse(is.na(juntos16$p710_04), 0, juntos16$p710_04)
table(juntos16$p710_04, useNA = c("ifany"))
## 
##     0     1     2 
##  1155 29856  4774
# Crea variable dicotomica "juntos" 
juntos16$juntos <- ifelse(juntos16$p710_04 == "0" | juntos16$p710_04 == "1", 0, 1)
table(juntos16$juntos)
## 
##     0     1 
## 31011  4774
# Etiquetas
juntos16$juntos <- factor(juntos16$juntos, labels = c("no", "si"))
table(juntos16$juntos)
## 
##    no    si 
## 31011  4774

Analiza a las personas beneficiarias en las zonas urbana y rural.

# Obsevar valores nulos
table(juntos16$estrato, useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 5341 6962 2930 2523 5077 1748 8637 2567
# Reemplazar valores nulos por ceros
# juntos16$estrato<-ifelse(is.na(juntos16$estrato),0,juntos16$estrato)
# table(juntos16$estrato, useNA = c("ifany"))

# Crea variable dicotomica "rural"
juntos16$rural <- ifelse(juntos16$estrato == "6" | juntos16$estrato == "7" | juntos16$estrato == "8", 1, 0)
table(juntos16$rural)
## 
##     0     1 
## 22833 12952
# Etiquetas
juntos16$rural <- factor(juntos16$rural, labels = c("urbano", "rural"))
table(juntos16$rural)
## 
## urbano  rural 
##  22833  12952

Analiza a las personas beneficiarias según el dominio, es decir, por su ubicación en costa, sierra y selva.

# Obsevar valores nulos
table(juntos16$dominio,useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 4749 3515 2951 2707 6047 4724 6966 4126
# Reemplazar valores nulos por ceros
#juntos16$dominio<-ifelse(is.na(juntos16$dominio), 0, juntos16$dominio)
#table(juntos16$dominio,useNA = c("ifany"))

# Crea variable categorica "dominio"
juntos16$natural<- ifelse(juntos16$dominio == 1|
                             juntos16$dominio == 2|
                             juntos16$dominio == 3|
                             juntos16$dominio == 8, 1,
                          ifelse(juntos16$dominio == 4|
                                    juntos16$dominio == 5|
                                    juntos16$dominio==6, 2,
                                 ifelse(juntos16$dominio==7, 3, -1)))
table(juntos16$natural, useNA = c("ifany"))
## 
##     1     2     3 
## 15341 13478  6966
# Etiquetas
juntos16$natural<- ifelse(juntos16$natural == 1, "costa",
                         ifelse(juntos16$natural == 2, "sierra",
                                ifelse(juntos16$natural == 3, "selva", NA)))
table(juntos16$natural)
## 
##  costa  selva sierra 
##  15341   6966  13478

Analiza a las personas beneficiarias según el departamento.

# Toma primeros dos numeros de la variable ubigeo
juntos16$sub12 <- substr(juntos16$ubigeo, 1, 2)
juntos16$sub12 <- as.numeric(juntos16$sub12)

# Agrega los departamentos
regiones <- data.frame(id= c(1:25), departamentos = 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"))

juntos16$region <- regiones$departamentos[match(juntos16$sub12,regiones$id)]
table(juntos16$region,useNA = c("ifany"))
## 
##      Amazonas        Ancash      Apurimac      Arequipa      Ayacucho 
##          1250          1464           939          1755          1171 
##     Cajamarca        Callao         Cusco  Huancavelica       Huanuco 
##          1729          1015          1248          1045          1284 
##           Ica         Junin   La Libertad    Lambayeque          Lima 
##          1678          1551          1568          1471          4685 
##        Loreto Madre De Dios      Moquegua         Pasco         Piura 
##          1470           608          1120           903          1632 
##          Puno    San Martin         Tacna        Tumbes       Ucayali 
##          1158          1343          1680           872          1146

Se seleccionan las variables más importantes de la base de datos

JH16 <- select(juntos16, aÑo, mes, conglome, vivienda, hogar, estrato, juntos, rural, natural, region, factor07)
head(JH16)

1.2 2017

El procedimiento se repite para el 2017.

setwd("D:/Libros/Seminarios/Construccion indicadores economicos sociales R/5 Beneficiarios programa juntos/Data Juntos")
juntos17 <- as.data.frame(sjlabelled::read_stata("enaho01-2017-700.dta"))
head(juntos17)
# Beneficiarios del programa
   # Obsevar valores nulos
   table(juntos17$p710_04, useNA = c("ifany"))
## 
##     0     1  <NA> 
## 28608  4676  1300
   # Reemplazar valores nulos por ceros
   juntos17$p710_04 <- ifelse(is.na(juntos17$p710_04), 0, juntos17$p710_04)
   table(juntos17$p710_04, useNA = c("ifany"))
## 
##     0     1     2 
##  1300 28608  4676
   # Crea variable dicotomica "juntos" 
   juntos17$juntos <- ifelse(juntos17$p710_04 == "0" | juntos17$p710_04 == "1", 0, 1)
   table(juntos17$juntos)
## 
##     0     1 
## 29908  4676
   # Etiquetas
   juntos17$juntos <- factor(juntos17$juntos, labels = c("no", "si"))
   table(juntos17$juntos)
## 
##    no    si 
## 29908  4676
# Beneficiarios en zonas rurales y urbanas
   # Obsevar valores nulos
   table(juntos17$estrato, useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 5356 6417 2708 2321 4862 1788 8615 2517
   # Reemplazar valores nulos por ceros
   # juntos17$estrato<-ifelse(is.na(juntos17$estrato),0,juntos17$estrato)
   # table(juntos17$estrato, useNA = c("ifany"))
   
   # Crea variable dicotomica "rural"
   juntos17$rural <- ifelse(juntos17$estrato=="6" | juntos17$estrato=="7" | juntos17$estrato=="8", 1, 0)
   table(juntos17$rural)
## 
##     0     1 
## 21664 12920
   # Etiquetas
   juntos17$rural <- factor(juntos17$rural, labels = c("urbano", "rural"))
   table(juntos17$rural)
## 
## urbano  rural 
##  21664  12920
# Benficiarios por dominio
   # Obsevar valores nulos
   table(juntos17$dominio,useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 4841 3229 2242 2403 6006 4786 7019 4058
   # Reemplazar valores nulos por ceros
   #juntos17$dominio<-ifelse(is.na(juntos17$dominio), 0, juntos17$dominio)
   #table(juntos17$dominio,useNA = c("ifany"))
   
   # Crea variable categorica "dominio"
   juntos17$natural<- ifelse(juntos17$dominio == 1|
                                juntos17$dominio == 2|
                                juntos17$dominio == 3|
                                juntos17$dominio == 8, 1,
                             ifelse(juntos17$dominio == 4|
                                       juntos17$dominio == 5|
                                       juntos17$dominio==6, 2,
                                    ifelse(juntos17$dominio==7, 3, -1)))
   table(juntos17$natural, useNA = c("ifany"))
## 
##     1     2     3 
## 14370 13195  7019
   # Etiquetas
   juntos17$natural<- ifelse(juntos17$natural == 1, "costa",
                            ifelse(juntos17$natural == 2, "sierra",
                                   ifelse(juntos17$natural == 3, "selva", NA)))
   table(juntos17$natural)
## 
##  costa  selva sierra 
##  14370   7019  13195
   # Beneficiarios por departamento
   juntos17$sub12 <- substr(juntos17$ubigeo, 1, 2)
   juntos17$sub12 <- as.numeric(juntos17$sub12)
   
   # Agrega los departamentos
   regiones <- data.frame(id= c(1:25), departamentos = 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"))
   
   juntos17$region <- regiones$departamentos[match(juntos17$sub12,regiones$id)]
   table(juntos17$region,useNA = c("ifany"))
## 
##      Amazonas        Ancash      Apurimac      Arequipa      Ayacucho 
##          1239          1399           926          1573          1152 
##     Cajamarca        Callao         Cusco  Huancavelica       Huanuco 
##          1480          1019          1234          1031          1263 
##           Ica         Junin   La Libertad    Lambayeque          Lima 
##          1553          1537          1603          1453          4513 
##        Loreto Madre De Dios      Moquegua         Pasco         Piura 
##          1505           631           974           917          1662 
##          Puno    San Martin         Tacna        Tumbes       Ucayali 
##          1183          1357          1351           869          1160
   # Seleccion de variables
   JH17 <- select(juntos17, aÑo, mes, conglome, vivienda, hogar, estrato, juntos, rural, natural, region, factor07)
   head(JH17)

1.3 2018

setwd("D:/Libros/Seminarios/Construccion indicadores economicos sociales R/5 Beneficiarios programa juntos/Data Juntos")
juntos18 <- as.data.frame(sjlabelled::read_stata("enaho01-2018-700.dta"))
head(juntos18)
# Beneficiarios del programa
   # Obsevar valores nulos
   table(juntos18$p710_04, useNA = c("ifany"))
## 
##     0     1  <NA> 
## 30919  5002  1541
   # Reemplazar valores nulos por ceros
   juntos18$p710_04 <- ifelse(is.na(juntos18$p710_04), 0, juntos18$p710_04)
   table(juntos18$p710_04, useNA = c("ifany"))
## 
##     0     1     2 
##  1541 30919  5002
   # Crea variable dicotomica "juntos" 
   juntos18$juntos <- ifelse(juntos18$p710_04 == "0" | juntos18$p710_04 == "1", 0, 1)
   table(juntos18$juntos)
## 
##     0     1 
## 32460  5002
   # Etiquetas
   juntos18$juntos <- factor(juntos18$juntos, labels = c("no", "si"))
   table(juntos18$juntos)
## 
##    no    si 
## 32460  5002
# Beneficiarios en zonas rurales y urbanas
   # Obsevar valores nulos
   table(juntos18$estrato, useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 5518 6644 2918 2348 5122 2228 9690 2994
   # Reemplazar valores nulos por ceros
   # juntos18$estrato<-ifelse(is.na(juntos18$estrato),0,juntos18$estrato)
   # table(juntos18$estrato, useNA = c("ifany"))
   
   # Crea variable dicotomica "rural"
   juntos18$rural <- ifelse(juntos18$estrato=="6" | juntos18$estrato=="7" | juntos18$estrato=="8", 1, 0)
   table(juntos18$rural)
## 
##     0     1 
## 22550 14912
   # Etiquetas
   juntos18$rural <- factor(juntos18$rural, labels = c("urbano", "rural"))
   table(juntos18$rural)
## 
## urbano  rural 
##  22550  14912
# Benficiarios por dominio
   # Obsevar valores nulos
   table(juntos18$dominio,useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 4781 3384 2442 2386 6659 6196 7551 4063
   # Reemplazar valores nulos por ceros
   #juntos18$dominio<-ifelse(is.na(juntos18$dominio), 0, juntos18$dominio)
   #table(juntos18$dominio,useNA = c("ifany"))
   
   # Crea variable categorica "dominio"
   juntos18$natural<- ifelse(juntos18$dominio == 1|
                                juntos18$dominio == 2|
                                juntos18$dominio == 3|
                                juntos18$dominio == 8, 1,
                             ifelse(juntos18$dominio == 4|
                                       juntos18$dominio == 5|
                                       juntos18$dominio==6, 2,
                                    ifelse(juntos18$dominio==7, 3, -1)))
   table(juntos18$natural, useNA = c("ifany"))
## 
##     1     2     3 
## 14670 15241  7551
   # Etiquetas
   juntos18$natural<- ifelse(juntos18$natural == 1, "costa",
                            ifelse(juntos18$natural == 2, "sierra",
                                   ifelse(juntos18$natural == 3, "selva", NA)))
   table(juntos18$natural)
## 
##  costa  selva sierra 
##  14670   7551  15241
   # Beneficiarios por departamento
   juntos18$sub12 <- substr(juntos18$ubigeo, 1, 2)
   juntos18$sub12 <- as.numeric(juntos18$sub12)
   
   # Agrega los departamentos
   regiones <- data.frame(id= c(1:25), departamentos = 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"))
   
   juntos18$region <- regiones$departamentos[match(juntos18$sub12,regiones$id)]
   table(juntos18$region,useNA = c("ifany"))
## 
##      Amazonas        Ancash      Apurimac      Arequipa      Ayacucho 
##          1225          1934           950          2427          1192 
##     Cajamarca        Callao         Cusco  Huancavelica       Huanuco 
##          1467          1011          1293          1039          1288 
##           Ica         Junin   La Libertad    Lambayeque          Lima 
##          1554          1567          1566          1437          4519 
##        Loreto Madre De Dios      Moquegua         Pasco         Piura 
##          1488           985           997          1279          1661 
##          Puno    San Martin         Tacna        Tumbes       Ucayali 
##          1838          1342          1371           864          1168
   # Seleccion de variables
   JH18 <- select(juntos18, aÑo, mes, conglome, vivienda, hogar, estrato, juntos, rural, natural, region, factor07)
   head(JH18)

1.4 2019

setwd("D:/Libros/Seminarios/Construccion indicadores economicos sociales R/5 Beneficiarios programa juntos/Data Juntos")
juntos19 <- as.data.frame(sjlabelled::read_stata("enaho01-2019-700.dta"))
head(juntos19)
# Beneficiarios del programa
   # Obsevar valores nulos
   table(juntos19$p710_04, useNA = c("ifany"))
## 
##     0     1  <NA> 
## 28874  4535  1156
   # Reemplazar valores nulos por ceros
   juntos19$p710_04 <- ifelse(is.na(juntos19$p710_04), 0, juntos19$p710_04)
   table(juntos19$p710_04, useNA = c("ifany"))
## 
##     0     1     2 
##  1156 28874  4535
   # Crea variable dicotomica "juntos" 
   juntos19$juntos <- ifelse(juntos19$p710_04 == "0" | juntos19$p710_04 == "1", 0, 1)
   table(juntos19$juntos)
## 
##     0     1 
## 30030  4535
   # Etiquetas
   juntos19$juntos <- factor(juntos19$juntos, labels = c("no", "si"))
   table(juntos19$juntos)
## 
##    no    si 
## 30030  4535
# Beneficiarios en zonas rurales y urbanas
   # Obsevar valores nulos
   table(juntos19$estrato, useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 5337 6320 2691 2322 4823 1817 8703 2552
   # Reemplazar valores nulos por ceros
   # juntos19$estrato<-ifelse(is.na(juntos19$estrato),0,juntos19$estrato)
   # table(juntos19$estrato, useNA = c("ifany"))
   
   # Crea variable dicotomica "rural"
   juntos19$rural <- ifelse(juntos19$estrato=="6" | juntos19$estrato=="7" | juntos19$estrato=="8", 1, 0)
   table(juntos19$rural)
## 
##     0     1 
## 21493 13072
   # Etiquetas
   juntos19$rural <- factor(juntos19$rural, labels = c("urbano", "rural"))
   table(juntos19$rural)
## 
## urbano  rural 
##  21493  13072
# Benficiarios por dominio
   # Obsevar valores nulos
   table(juntos19$dominio,useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 4782 3258 2196 2362 6049 4898 6990 4030
   # Reemplazar valores nulos por ceros
   #juntos19$dominio<-ifelse(is.na(juntos19$dominio), 0, juntos19$dominio)
   #table(juntos19$dominio,useNA = c("ifany"))
   
   # Crea variable categorica "dominio"
   juntos19$natural<- ifelse(juntos19$dominio == 1|
                                juntos19$dominio == 2|
                                juntos19$dominio == 3|
                                juntos19$dominio == 8, 1,
                             ifelse(juntos19$dominio == 4|
                                       juntos19$dominio == 5|
                                       juntos19$dominio==6, 2,
                                    ifelse(juntos19$dominio==7, 3, -1)))
   table(juntos19$natural, useNA = c("ifany"))
## 
##     1     2     3 
## 14266 13309  6990
   # Etiquetas
   juntos19$natural<- ifelse(juntos19$natural == 1, "costa",
                            ifelse(juntos19$natural == 2, "sierra",
                                   ifelse(juntos19$natural == 3, "selva", NA)))
   table(juntos19$natural)
## 
##  costa  selva sierra 
##  14266   6990  13309
   # Beneficiarios por departamento
   juntos19$sub12 <- substr(juntos19$ubigeo, 1, 2)
   juntos19$sub12 <- as.numeric(juntos19$sub12)
   
   # Agrega los departamentos
   regiones <- data.frame(id= c(1:25), departamentos = 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"))
   
   juntos19$region <- regiones$departamentos[match(juntos19$sub12,regiones$id)]
   table(juntos19$region,useNA = c("ifany"))
## 
##      Amazonas        Ancash      Apurimac      Arequipa      Ayacucho 
##          1229          1421           959          1560          1169 
##     Cajamarca        Callao         Cusco  Huancavelica       Huanuco 
##          1442          1009          1278          1032          1277 
##           Ica         Junin   La Libertad    Lambayeque          Lima 
##          1563          1571          1585          1428          4514 
##        Loreto Madre De Dios      Moquegua         Pasco         Piura 
##          1468           642           971           889          1655 
##          Puno    San Martin         Tacna        Tumbes       Ucayali 
##          1202          1335          1348           854          1164
   # Seleccion de variables
   JH19 <- select(juntos19, aÑo, mes, conglome, vivienda, hogar, estrato, juntos, rural, natural, region, factor07)
   head(JH19)

1.5 2020

setwd("D:/Libros/Seminarios/Construccion indicadores economicos sociales R/5 Beneficiarios programa juntos/Data Juntos")
juntos20 <- as.data.frame(sjlabelled::read_stata("enaho01-2020-700.dta"))
head(juntos20)
# Beneficiarios del programa
   # Obsevar valores nulos
   table(juntos20$p710_04, useNA = c("ifany"))
## 
##     0     1  <NA> 
## 28996  4946   548
   # Reemplazar valores nulos por ceros
   juntos20$p710_04 <- ifelse(is.na(juntos20$p710_04), 0, juntos20$p710_04)
   table(juntos20$p710_04, useNA = c("ifany"))
## 
##     0     1     2 
##   548 28996  4946
   # Crea variable dicotomica "juntos" 
   juntos20$juntos <- ifelse(juntos20$p710_04 == "0" | juntos20$p710_04 == "1", 0, 1)
   table(juntos20$juntos)
## 
##     0     1 
## 29544  4946
   # Etiquetas
   juntos20$juntos <- factor(juntos20$juntos, labels = c("no", "si"))
   table(juntos20$juntos)
## 
##    no    si 
## 29544  4946
# Beneficiarios en zonas rurales y urbanas
   # Obsevar valores nulos
   table(juntos20$estrato, useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 5604 6702 2831 2229 4497 1870 8135 2622
   # Reemplazar valores nulos por ceros
   # juntos20$estrato<-ifelse(is.na(juntos20$estrato),0,juntos20$estrato)
   # table(juntos20$estrato, useNA = c("ifany"))
   
   # Crea variable dicotomica "rural"
   juntos20$rural <- ifelse(juntos20$estrato=="6" | juntos20$estrato=="7" | juntos20$estrato=="8", 1, 0)
   table(juntos20$rural)
## 
##     0     1 
## 21863 12627
   # Etiquetas
   juntos20$rural <- factor(juntos20$rural, labels = c("urbano", "rural"))
   table(juntos20$rural)
## 
## urbano  rural 
##  21863  12627
# Benficiarios por dominio
   # Obsevar valores nulos
   table(juntos20$dominio,useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 4902 3178 2306 2269 5968 4795 7004 4068
   # Reemplazar valores nulos por ceros
   #juntos20$dominio<-ifelse(is.na(juntos20$dominio), 0, juntos20$dominio)
   #table(juntos20$dominio,useNA = c("ifany"))
   
   # Crea variable categorica "dominio"
   juntos20$natural<- ifelse(juntos20$dominio == 1|
                                juntos20$dominio == 2|
                                juntos20$dominio == 3|
                                juntos20$dominio == 8, 1,
                             ifelse(juntos20$dominio == 4|
                                       juntos20$dominio == 5|
                                       juntos20$dominio==6, 2,
                                    ifelse(juntos20$dominio==7, 3, -1)))
   table(juntos20$natural, useNA = c("ifany"))
## 
##     1     2     3 
## 14454 13032  7004
   # Etiquetas
   juntos20$natural<- ifelse(juntos20$natural == 1, "costa",
                            ifelse(juntos20$natural == 2, "sierra",
                                   ifelse(juntos20$natural == 3, "selva", NA)))
   table(juntos20$natural)
## 
##  costa  selva sierra 
##  14454   7004  13032
   # Beneficiarios por departamento
   juntos20$sub12 <- substr(juntos20$ubigeo, 1, 2)
   juntos20$sub12 <- as.numeric(juntos20$sub12)
   
   # Agrega los departamentos
   regiones <- data.frame(id= c(1:25), departamentos = 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"))
   
   juntos20$region <- regiones$departamentos[match(juntos20$sub12,regiones$id)]
   table(juntos20$region,useNA = c("ifany"))
## 
##      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
   # Seleccion de variables
   JH20 <- select(juntos20, aÑo, mes, conglome, vivienda, hogar, estrato, juntos, rural, natural, region, factor07)
head(JH20)

1.6 2021

setwd("D:/Libros/Seminarios/Construccion indicadores economicos sociales R/5 Beneficiarios programa juntos/Data Juntos")
juntos21 <- as.data.frame(sjlabelled::read_stata("enaho01-2021-700.dta"))
head(juntos21)
# Beneficiarios del programa
   # Obsevar valores nulos
   table(juntos21$p710_04, useNA = c("ifany"))
## 
##     0     1  <NA> 
## 28962  4043  1240
   # Reemplazar valores nulos por ceros
   juntos21$p710_04 <- ifelse(is.na(juntos21$p710_04), 0, juntos21$p710_04)
   table(juntos21$p710_04, useNA = c("ifany"))
## 
##     0     1     2 
##  1240 28962  4043
   # Crea variable dicotomica "juntos" 
   juntos21$juntos <- ifelse(juntos21$p710_04 == "0" | juntos21$p710_04 == "1", 0, 1)
   table(juntos21$juntos)
## 
##     0     1 
## 30202  4043
   # Etiquetas
   juntos21$juntos <- factor(juntos21$juntos, labels = c("no", "si"))
   table(juntos21$juntos)
## 
##    no    si 
## 30202  4043
# Beneficiarios en zonas rurales y urbanas
   # Obsevar valores nulos
   table(juntos21$estrato, useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 5809 6543 2931 2339 4438 2069 7338 2778
   # Reemplazar valores nulos por ceros
   # juntos21$estrato<-ifelse(is.na(juntos21$estrato),0,juntos21$estrato)
   # table(juntos21$estrato, useNA = c("ifany"))
   
   # Crea variable dicotomica "rural"
   juntos21$rural <- ifelse(juntos21$estrato=="6" | juntos21$estrato=="7" | juntos21$estrato=="8", 1, 0)
   table(juntos21$rural)
## 
##     0     1 
## 22060 12185
   # Etiquetas
   juntos21$rural <- factor(juntos21$rural, labels = c("urbano", "rural"))
   table(juntos21$rural)
## 
## urbano  rural 
##  22060  12185
# Benficiarios por dominio
   # Obsevar valores nulos
   table(juntos21$dominio,useNA = c("ifany"))
## 
##    1    2    3    4    5    6    7    8 
## 4873 3257 2365 2132 5812 4667 7131 4008
   # Reemplazar valores nulos por ceros
   #juntos21$dominio<-ifelse(is.na(juntos21$dominio), 0, juntos21$dominio)
   #table(juntos21$dominio,useNA = c("ifany"))
   
   # Crea variable categorica "dominio"
   juntos21$natural<- ifelse(juntos21$dominio == 1|
                                juntos21$dominio == 2|
                                juntos21$dominio == 3|
                                juntos21$dominio == 8, 1,
                             ifelse(juntos21$dominio == 4|
                                       juntos21$dominio == 5|
                                       juntos21$dominio==6, 2,
                                    ifelse(juntos21$dominio==7, 3, -1)))
   table(juntos21$natural, useNA = c("ifany"))
## 
##     1     2     3 
## 14503 12611  7131
   # Etiquetas
   juntos21$natural<- ifelse(juntos21$natural == 1, "costa",
                            ifelse(juntos21$natural == 2, "sierra",
                                   ifelse(juntos21$natural == 3, "selva", NA)))
   table(juntos21$natural)
## 
##  costa  selva sierra 
##  14503   7131  12611
   # Beneficiarios por departamento
   juntos21$sub12 <- substr(juntos21$ubigeo, 1, 2)
   juntos21$sub12 <- as.numeric(juntos21$sub12)
   
   # Agrega los departamentos
   regiones <- data.frame(id= c(1:25), departamentos = 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"))
   
   juntos21$region <- regiones$departamentos[match(juntos21$sub12,regiones$id)]
   table(juntos21$region,useNA = c("ifany"))
## 
##      Amazonas        Ancash      Apurimac      Arequipa      Ayacucho 
##          1254          1433           960          1534          1182 
##     Cajamarca        Callao         Cusco  Huancavelica       Huanuco 
##          1453           982          1259          1036          1269 
##           Ica         Junin   La Libertad    Lambayeque          Lima 
##          1542          1531          1538          1434          4525 
##        Loreto Madre De Dios      Moquegua         Pasco         Piura 
##          1388           621           982           886          1632 
##          Puno    San Martin         Tacna        Tumbes       Ucayali 
##          1143          1334          1321           863          1143
   # Seleccion de variables
   JH21 <- select(juntos21, aÑo, mes, conglome, vivienda, hogar, estrato, juntos, rural, natural, region, factor07)
   head(JH21)

1.7 Base de datos final

Se consolidan todas las bases de datos de forma vertical, es decir, se agregan filas.

# Consolida por columnas
combined <- rbind(JH16, JH17, JH18, JH19, JH20, JH21)
head(combined)
# Exporta la base de datos final
# write.csv(combined,"BaseFinal_ProgramaJuntos16_21.csv")

# Ordena la base de datos
combined <- arrange(combined,aÑo, mes)
View(combined)

# Diseño muestral
attach(combined)
facpob <- factor07
diseno <- svydesign(id=~conglome, strata=~estrato, weight=~facpob, data=combined, nest=TRUE)

1.8 Análisis del programa

1.8.1 Personas beneficiarias

Porcentaje de personas beneficiadas por el programa

tabla <- svyby(~juntos, ~aÑo, diseno, svymean, deff = FALSE, na.rm = TRUE)
tabla
tabladf <- as.data.frame(tabla)
tabladf["2016", "juntossi"]*100 
## [1] 10.98318
barplot(tabla$juntossi, ylab = "%", xlab = "Año")

Para el año 2016, 89.01% de los hogares no era beneficiaria del programa, sólo 10.98% participaban de éste.

1.8.2 Hogares beneficiarios

El total de hogares beneficiados

total <- svytotal(~juntos + aÑo, diseno, deff = TRUE)
totaldf <- as.data.frame(total)

totaldf["aÑo2016",]/1000000

En el 2016, 8.6 millones de hogares peruanos fueron beneficiados.

Los hogares beneficiarios

tabladf["2016", "juntossi"] * totaldf["aÑo2016",]/1000000

Ese 10.98% por ciento de beneficiarios representa 0.94 millones de hogares beneficiarios.

1.8.3 Beneficiarios a nivel zona

A nivel rural y urbano se tiene

tabla <- svyby(~juntos, ~aÑo + rural, diseno, svymean, deff = FALSE, na.rm = TRUE)
tablaru <- as.data.frame(tabla)
tablaru[,"juntossi"] * 100
##  [1]  4.719035  4.725547  4.178800  4.131063  4.949785  4.736200 31.146726
##  [8] 31.457485 31.555199 30.640095 34.351349 28.337373

En 2016, a nivel rural, 31.14% de los hogares peruanos fueron beneficiados, mientras que para el mismo año en la zona urbana sólo fue el 4.71%.

1.8.4 Beneficiarios a nivel dominio

A nivel dominio se tiene lo siguiente

tabla <- svyby(~juntos, ~ aÑo+natural, diseno, svymean, deff = FALSE, na.rm = TRUE)
tablado <- as.data.frame(tabla)

En 2016, el 2.00% de los hogares en la costa eran beneficiarios del programa.

1.8.5 Beneficiarios a nivel departamento

tabla <- svyby(~juntos, ~aÑo+region,diseno, svymean, deff = FALSE, na.rm = TRUE)
tabladeo <- as.data.frame(tabla)

En 2016, el 33.16% de los hogares en el departamento Amazonas eran beneficiarios del programa.