Tablas de contingencia de pobreza Nueva-Metodologia Casen 2006-2020

Por comunas

VE-CC-AJ

DataIntelligence
date: 27-09-2021

En un proceso laberíntico logramos obtener las bases de datos que contenian las categorías de pobreza que conincidian con las tablas oficiales de corrección retroactiva de la Casen,/h3>

Lectura de bases de datos Casen

direccion <- switch(2,"C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/","C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/")

dataset_06 <<- readRDS(paste0(direccion,"casen_2006_c.rds"))
dataset_06 <- mutate_if(dataset_06, is.factor, as.character)
dataset_09 <<- readRDS(paste0(direccion,"casen_2009_c.rds"))
dataset_09 <- mutate_if(dataset_09, is.factor, as.character) 
dataset_11 <<- readRDS(paste0(direccion,"casen_2011_c.rds"))
dataset_11 <- mutate_if(dataset_11, is.factor, as.character) 
dataset_13 <<- readRDS(paste0(direccion,"casen_2013_c.rds"))
dataset_13 <- mutate_if(dataset_13, is.factor, as.character) 
dataset_15 <<- readRDS(paste0(direccion,"casen_2015_c.rds"))
dataset_15 <- mutate_if(dataset_15, is.factor, as.character)
dataset_17 <<- readRDS(paste0(direccion,"casen_2017_c.rds"))
dataset_17 <- mutate_if(dataset_17, is.factor, as.character)
dataset_20 <<- readRDS(paste0(direccion,"casen_2020_c.rds"))
dataset_20 <- mutate_if(dataset_20, is.factor, as.character)

Base de datos Complementaria de Ingresos Nueva Metodología Casen 2006 SPSS

dataset_06$clave <- paste0(dataset_06$SEG,dataset_06$O,dataset_06$F)
MN_2006 <- read.spss("C:/Users/enamo/Desktop/Shiny-R/comprobacion_Abner/Ingresos MN 2006.sav", to.data.frame = TRUE)
MN_2006$clave <- paste0(MN_2006$seg,MN_2006$o,MN_2006$f)

MN_2006_2 <- MN_2006[,c("clave","pobreza_MN")]
dataset_06 <- merge(x= dataset_06, y= MN_2006_2, by="clave")
dataset_06 <- mutate_if(dataset_06, is.factor, as.character)

Base de datos Complementaria de Ingresos Nueva Metodología Casen 2009 SPSS

dataset_09$clave <- paste0(dataset_09$SEGMENTO,dataset_09$IDVIV,dataset_09$HOGAR,dataset_09$O)
MN_2009 <- read.spss("C:/Users/enamo/Desktop/Shiny-R/comprobacion_Abner/Ingresos MN 2009.sav", to.data.frame = TRUE)
MN_2009$clave <- paste0(MN_2009$SEGMENTO,MN_2009$IDVIV,MN_2009$HOGAR,MN_2009$O)

MN_2009_2 <- MN_2009[,c("clave","pobreza_MN")]
dataset_09 <- merge(x= dataset_09, y= MN_2009_2, by="clave")
dataset_09 <- mutate_if(dataset_09, is.factor, as.character) 

Base Complementaria Ingresos Nueva Metodología Casen 2011 (submuestra noviembre 2011-enero 2012) (Base 2011 utilizada para estimaciones de serie Casen) SPSS

dataset_11$clave <- paste0(dataset_11$folio,dataset_11$o)
MN_2011 <- read.spss("C:/Users/enamo/Desktop/Shiny-R/comprobacion_Abner/Ingresos MN 2011.sav", to.data.frame = TRUE)
MN_2011$clave <- paste0(MN_2011$folio,MN_2011$o )

MN_2011_2 <- MN_2011[,c("clave","pobreza_MN")]
dataset_11 <- merge(x= dataset_11, y= MN_2011_2, by="clave")
dataset_11 <- mutate_if(dataset_11, is.factor, as.character) 

Para 2013 la pobreza con la nueva metodología ya esta incluida en la base de datos oficial

dataset_13$clave <- paste0(dataset_13$folio,dataset_13$o)
MN_2013 <- as.data.frame(read_dta("C:/Users/enamo/Desktop/Shiny-R/comprobacion_Abner/2011/casen_2013_ymt.dta"))
MN_2013$clave <- paste0(MN_2013$folio,MN_2013$o )

MN_2013_2 <- MN_2013[,c("clave","pobreza_mt")]
dataset_13 <- merge(x= dataset_13, y= MN_2013_2, by="clave")
dataset_13 <- mutate_if(dataset_13, is.factor, as.character) 
dataset_06$pobreza_MN[dataset_06$pobreza_MN == "Pobres no extremos"] <- "Pobre"
dataset_06$pobreza_MN[dataset_06$pobreza_MN == "No pobres"] <- "No pobre"
dataset_06$pobreza_MN[dataset_06$pobreza_MN == "Pobres extremos"] <- "Pobre extremo"

dataset_09$pobreza_MN[dataset_09$pobreza_MN == "Pobres no extremos"] <- "Pobre"
dataset_09$pobreza_MN[dataset_09$pobreza_MN == "No pobres"] <- "No pobre"
dataset_09$pobreza_MN[dataset_09$pobreza_MN == "Pobres extremos"] <- "Pobre extremo"

dataset_11$pobreza_MN[dataset_11$pobreza_MN == "Pobres no extremos"] <- "Pobre"
dataset_11$pobreza_MN[dataset_11$pobreza_MN == "No pobres"] <- "No pobre"
dataset_11$pobreza_MN[dataset_11$pobreza_MN == "Pobres extremos"] <- "Pobre extremo"

dataset_13$pobreza_MN[dataset_13$pobreza_MN == "Pobres no extremos"] <- "Pobre"
dataset_13$pobreza_MN[dataset_13$pobreza_MN == "No pobres"] <- "No pobre"
dataset_13$pobreza_MN[dataset_13$pobreza_MN == "Pobres extremos"] <- "Pobre extremo"

dataset_15$pobreza[dataset_15$pobreza == "Pobres no extremos"] <- "Pobre"
dataset_15$pobreza[dataset_15$pobreza == "No pobres"] <- "No pobre"
dataset_15$pobreza[dataset_15$pobreza == "Pobres extremos"] <- "Pobre extremo"

dataset_17$pobreza[dataset_17$pobreza == "Pobres no extremos"] <- "Pobre"
dataset_17$pobreza[dataset_17$pobreza == "No pobres"] <- "No pobre"
dataset_17$pobreza[dataset_17$pobreza == "Pobres extremos"] <- "Pobre extremo"

dataset_20$pobreza[dataset_20$pobreza == "Pobres no extremos"] <- "Pobre"
dataset_20$pobreza[dataset_20$pobreza == "No pobres"] <- "No pobre"
dataset_20$pobreza[dataset_20$pobreza == "Pobres extremos"] <- "Pobre extremo"

0.0.1 Homologación de alfabetismo

dataset_06$E1[dataset_06$E1 == "No sabe /Sin dato"] <- NA

dataset_11$e1[dataset_11$e1 == "Sí, lee y escribe"] <- "Sí"
dataset_11$e1[dataset_11$e1 == "No, sólo lee"] <- "No"
dataset_11$e1[dataset_11$e1 == "No, ninguno"] <- "No"
dataset_11$e1[dataset_11$e1 == "No, sólo escribe"] <- "No"

dataset_13$e1[dataset_13$e1 == "Sí, lee y escribe"] <- "Sí"
dataset_13$e1[dataset_13$e1 == "No, ninguno"] <- "No"
dataset_13$e1[dataset_13$e1 == "No, sólo lee"] <- "No"
dataset_13$e1[dataset_13$e1 == "No, sólo escribe"] <- "No"
dataset_13$e1[dataset_13$e1 == "NS/NR"] <- NA

dataset_15$e1[dataset_15$e1 == "Sí, lee y escribe"] <- "Sí"
dataset_15$e1[dataset_15$e1 == "No, ninguno"] <- "No"
dataset_15$e1[dataset_15$e1 == "No, sólo lee"] <- "No"
dataset_15$e1[dataset_15$e1 == "No, sólo escribe"] <- "No"

dataset_17$e1[dataset_17$e1 == "Sí, lee y escribe"] <- "Sí"
dataset_17$e1[dataset_17$e1 == "No, sólo lee"] <- "No"
dataset_17$e1[dataset_17$e1 == "No, ninguno"] <- "No"
dataset_17$e1[dataset_17$e1 == "No sabe/responde"] <- NA
dataset_17$e1[dataset_17$e1 == "No, sólo escribe"] <- "No"

dataset_20$e1[dataset_20$e1 == 1] <- "Sí"
dataset_20$e1[dataset_20$e1 == 0] <- "No"

0.0.2 Homologación de migracion

for (i in unique(dataset_20$r2_pais_esp)) {
  pais <- gsub("(^[[:space:]]+|[[:space:]]+$)", "", i)
  pais <- tolower(pais)
  dataset_20$r2_pais_esp[dataset_20$r2_pais_esp == i] <- str_to_title(pais)
}

dataset_11$r2p_cod[dataset_11$r2p_cod == "No contesta"] <- "NS/NR"
dataset_13$r2_p_cod[dataset_13$r2_p_cod == "No contesta"] <- "NS/NR"
dataset_15$r2espp_cod[dataset_15$r2espp_cod == "No contesta"] <- "NS/NR"
dataset_17$r2_p_cod[dataset_17$r2_p_cod == "No Bien Especificado"] <- "NS/NR"
dataset_17$r2_p_cod[dataset_17$r2_p_cod == "No Responde"] <- "NS/NR"
dataset_20$r2_pais_esp[dataset_20$r2_pais_esp == "No Bien Especificado"] <- "NS/NR"
dataset_20$r2_pais_esp[dataset_20$r2_pais_esp == ""] <- NA
dataset_20$r2_pais_esp[dataset_20$r2_pais_esp == "No Responde"] <- "NS/NR"

1 Generación de tablas de contingencia con etnia

df_tablas <- data.frame()

funcion1 <- function(n){
 
 xx<-switch(n,"2006","2009","2011","2013","2015","2017","2020")
 tanio <<- xx

 
 

if(xx==2006) {
  
eliminated <- dataset_06
a <- eliminated$pobreza_MN
b <- eliminated$COMUNA
c <- eliminated$SEXO
d <- eliminated$E1 #alfabetismo
e <- eliminated$T4 #etnia 
anio <- 2006
}

if(xx==2009) {

eliminated <- dataset_09
a <- eliminated$pobreza_MN
b <- eliminated$COMUNA
c <- eliminated$SEXO
d <- eliminated$E1 #alfabetismo
e <- eliminated$T5 #etnia 
anio <- 2009

}

if(xx==2011) {
  
eliminated <- dataset_11
a <- eliminated$pobreza_MN
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia 
anio <- 2011

}

if(xx==2013) {
  
eliminated <- dataset_13
a <- eliminated$pobreza_MN
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia 
anio <- 2013

}
 

if(xx==2015) {
  
eliminated <- dataset_15
a <- eliminated$pobreza
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia 
anio <- 2015
}

if(xx==2017) {
  
eliminated <- dataset_17
a <- eliminated$pobreza
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia 
anio <- 2017
}

if(xx==2020) {
  
eliminated <-dataset_20
a <- eliminated$pobreza
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia 
anio <- 2020
}

################ -- frecuencia
expan<-switch(n,"EXPC","EXPC","expc_full","expc","expc_todas","expc","expc")

tabla_matp <-xtabs(eliminated[,(expan)]~a+b+c+d+e , data = eliminated)
tabla_matp <- as.data.frame(tabla_matp)
tabla_matp <-tabla_matp[!(tabla_matp$Freq == 0),]
df <- tabla_matp
df <- df[complete.cases(df), ]
################ 


 
names(df)[1] <- "Pobreza"
names(df)[2] <- "Comuna"
names(df)[3] <- "Sexo"
names(df)[4] <- "Alfabetismo"
names(df)[5] <- "Etnia"
df$Año = xx

direc_cod_com <- paste0("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/codigos_comunales_2006-2020.rds")
codigos_comunales <- readRDS(file = direc_cod_com)
names(codigos_comunales)[1] <- "Código"
names(codigos_comunales)[2] <- "Comuna"

tabla_df = merge( x = df, y = codigos_comunales, by = "Comuna", all.x = TRUE)
tabla_df2 <<- tabla_df 

}

data_df3 <- data.frame()
for (n in 1:7){
  funcion1(n)

  data_df3 <- rbind(data_df3,tabla_df2)
  assign(paste0("tabla_etnia_",tanio),data_df3)
  print(paste0("tabla_etnia_",tanio))
} 
## [1] "tabla_etnia_2006"
## [1] "tabla_etnia_2009"
## [1] "tabla_etnia_2011"
## [1] "tabla_etnia_2013"
## [1] "tabla_etnia_2015"
## [1] "tabla_etnia_2017"
## [1] "tabla_etnia_2020"
data_df3 <- rbind(tabla_etnia_2006,tabla_etnia_2009,tabla_etnia_2011,tabla_etnia_2013,tabla_etnia_2015,tabla_etnia_2017,tabla_etnia_2020)

tabla_final <- data_df3
tabla_final$Etnia[tabla_final$Etnia == "Aimara" ]  <- "Aymara"
tabla_final$Etnia[tabla_final$Etnia == "No pertenece a ninguno de estos pueblos indígenas" ]  <-  "No pertenece a ningún pueblo indígena"
tabla_final$Etnia[tabla_final$Etnia == "Mapuche"]  <- "Mapuche"
tabla_final$Etnia[tabla_final$Etnia == "Diaguita"]  <- "Diaguita"
tabla_final$Etnia[tabla_final$Etnia == "Atacameño" ]  <- "Atacameño"
tabla_final$Etnia[tabla_final$Etnia == "Atacameño (Likan-Antai)" ]  <- "Atacameño"
tabla_final$Etnia[tabla_final$Etnia == "Atacameño (Likán Antai)" ]  <- "Atacameño"
tabla_final$Etnia[tabla_final$Etnia == "Atacameño (Likán-Antai)" ]  <- "Atacameño"
tabla_final$Etnia[tabla_final$Etnia == "Quechua" ]  <- "Quechua"
tabla_final$Etnia[tabla_final$Etnia == "Yámana o Yagán" ]  <- "Yagán"
tabla_final$Etnia[tabla_final$Etnia == "Yagan" ]  <- "Yagán"
tabla_final$Etnia[tabla_final$Etnia == "Yagán (Yámana)" ]  <- "Yagán"
tabla_final$Etnia[tabla_final$Etnia == "Rapa-Nui o Pascuenses"]  <- "Pascuense"
tabla_final$Etnia[tabla_final$Etnia == "Rapa-Nui"]  <- "Pascuense"
tabla_final$Etnia[tabla_final$Etnia == "Rapa Nui (Pascuense)"]  <- "Pascuense"
tabla_final$Etnia[tabla_final$Etnia == "Rapa Nui"]  <- "Pascuense"
tabla_final$Etnia[tabla_final$Etnia == "Collas"]  <- "Coya"
tabla_final$Etnia[tabla_final$Etnia == "Kawashkar o Alacalufes" ]  <- "Alacalufe"
tabla_final$Etnia[tabla_final$Etnia == "Kawashkar" ]  <- "Alacalufe"
tabla_final$Etnia[tabla_final$Etnia == "Kawésqar (Alacalufes)" ]  <- "Alacalufe"
tabla_final$Etnia[tabla_final$Etnia == "Kawésqar" ]  <- "Alacalufe"
tabla_final$Etnia[tabla_final$Etnia == "Kawaskar" ]  <- "Alacalufe"
tabla_final$Etnia[tabla_final$Etnia == "Chango" ]  <- "Chango"
tabla_final$Etnia[tabla_final$Etnia ==  "Sin dato"]  <- NA
tabla_final$Etnia[tabla_final$Etnia ==  "NS/NR"   ]  <- NA
tabla_final$Etnia[tabla_final$Etnia == "No sabe/no responde" ]  <- NA
data_df3 <- tabla_final
data_df3 <- mutate_if(data_df3, is.factor, as.character)
##############
data_df3$cod_sexo <- data_df3$Sexo
data_df3$cod_sexo[data_df3$cod_sexo == "Hombre"] <- "01"
data_df3$cod_sexo[data_df3$cod_sexo == "Mujer"] <- "02"

data_df3$cod_alfa <- data_df3$Alfabetismo
data_df3$cod_alfa[data_df3$cod_alfa == "Sí"] <- "01"
data_df3$cod_alfa[data_df3$cod_alfa == "No"] <- "02"

data_df3$cod_pobreza <- data_df3$Pobreza
data_df3$cod_pobreza[data_df3$cod_pobreza == "No pobre"] <- "01"
data_df3$cod_pobreza[data_df3$cod_pobreza == "Pobre"] <- "02"
data_df3$cod_pobreza[data_df3$cod_pobreza == "Pobre extremo"] <- "03"

Etnia <- c(sort(unique(data_df3$Etnia)[-8] ),"No pertenece a ningún pueblo indígena")
Etnia<- as.data.frame(Etnia)
Etnia$cod_etnia <- paste("00",seq(1:nrow(Etnia)), sep = "")
codigos <- Etnia$cod_etnia
rango <- seq(1:nrow(Etnia))
cadena <- paste("",codigos[rango], sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(1),4)
codigos <- as.data.frame(codigos)
cadena <- as.data.frame(cadena)
codigos <- cbind(Etnia,cadena)
colnames(codigos) <- c("Etnia","cadena","cod_etnia")

data_df3 <- merge(x=data_df3, y=codigos, by="Etnia")

data_df3 <- data_df3[,c(2,8,1,13,4,9,5,10,3,11,6,7)]
tabla_final <- data_df3
##############

1.1 Pobreza por etnia

datatable(tabla_final, extensions = 'Buttons', escape = FALSE, rownames = FALSE,
          options = list(dom = 'Bfrtip',
          buttons = list('colvis', list(extend = 'collection',
          buttons = list(
          list(extend='copy'),
          list(extend='excel',
            filename = 'tabla_etnia_pobreza'),
          list(extend='pdf',
            filename= 'tabla_etnia_pobreza')),
          text = 'Download')), scrollX = TRUE))
saveRDS(tabla_final,"tabla_pobreza_NM.rds")

2 Generación de tablas de contingencia con migración

df_tablas <- data.frame()

funcion1 <- function(n){
 
 xx<-switch(n,"2011","2013","2015","2017","2020")
 tanio <<- xx

 

if(xx==2011) {
  
eliminated <- dataset_11
a <- eliminated$pobreza_MN
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r2p_cod #etnia 
anio <- 2011

}

if(xx==2013) {
  
eliminated <- dataset_13
a <- eliminated$pobreza_MN
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r2_p_cod #etnia 
anio <- 2013

}
 

if(xx==2015) {
  
eliminated <- dataset_15
a <- eliminated$pobreza
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r2espp_cod #etnia 
anio <- 2015
}

if(xx==2017) {
  
eliminated <- dataset_17
a <- eliminated$pobreza
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r2_p_cod #etnia 
anio <- 2017
}

if(xx==2020) {
  
eliminated <-dataset_20
a <- eliminated$pobreza
b <- eliminated$comuna
c <- eliminated$sexo
d <- eliminated$e1 #alfabetismo
e <- eliminated$r2_pais_esp #etnia 
anio <- 2020
}

################ -- frecuencia
expan<-switch(n,"expc_full","expc","expc_todas","expc","expc")

tabla_matp <-xtabs(eliminated[,(expan)]~a+b+c+d+e , data = eliminated)
tabla_matp <- as.data.frame(tabla_matp)
tabla_matp <-tabla_matp[!(tabla_matp$Freq == 0),]
df <- tabla_matp
df <- df[complete.cases(df), ]
################ 


 
names(df)[1] <- "Pobreza"
names(df)[2] <- "Comuna"
names(df)[3] <- "Sexo"
names(df)[4] <- "Alfabetismo"
names(df)[5] <- "Origen"
df$Año = xx

direc_cod_com <- paste0("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/codigos_comunales_2006-2020.rds")
codigos_comunales <- readRDS(file = direc_cod_com)
names(codigos_comunales)[1] <- "Código"
names(codigos_comunales)[2] <- "Comuna"

tabla_df = merge( x = df, y = codigos_comunales, by = "Comuna", all.x = TRUE)
tabla_df2 <<- tabla_df 

}

data_df3 <- data.frame()
for (n in 1:5){
  funcion1(n)

  data_df3 <- rbind(data_df3,tabla_df2)
  assign(paste0("tabla_origen_",tanio),data_df3)
  print(paste0("tabla_origen_",tanio))
} 
## [1] "tabla_origen_2011"
## [1] "tabla_origen_2013"
## [1] "tabla_origen_2015"
## [1] "tabla_origen_2017"
## [1] "tabla_origen_2020"
data_df3 <- rbind(tabla_origen_2011,tabla_origen_2013,tabla_origen_2015,tabla_origen_2017,tabla_origen_2020)
 

#################
data_df3 <- mutate_if(data_df3, is.factor, as.character)
data_df3$cod_sexo <- data_df3$Sexo
data_df3$cod_sexo[data_df3$cod_sexo == "Hombre"] <- "01"
data_df3$cod_sexo[data_df3$cod_sexo == "Mujer"] <- "02"

data_df3$cod_alfa <- data_df3$Alfabetismo
data_df3$cod_alfa[data_df3$cod_alfa == "Sí"] <- "01"
data_df3$cod_alfa[data_df3$cod_alfa == "No"] <- "02"

data_df3$cod_pobreza <- data_df3$Pobreza
data_df3$cod_pobreza[data_df3$cod_pobreza == "No pobre"] <- "01"
data_df3$cod_pobreza[data_df3$cod_pobreza == "Pobre"] <- "02"
data_df3$cod_pobreza[data_df3$cod_pobreza == "Pobre extremo"] <- "03"

Origen <- c(sort(unique(data_df3$Origen))[-50],"NS/NR")
Origen<- as.data.frame(Origen)
Origen$cod_Origen <- paste("00",seq(1:nrow(Origen)), sep = "")
codigos <- Origen$cod_Origen
rango <- seq(1:nrow(Origen))
cadena <- paste("",codigos[rango], sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(1),4)
codigos <- as.data.frame(codigos)
cadena <- as.data.frame(cadena)
codigos <- cbind(Origen,cadena)
colnames(codigos) <- c("Origen","cadena","cod_Origen") 
data_df3 <- merge(x=data_df3, y=codigos, by="Origen")
data_df3 <- data_df3[,c(2,8,1,13,4,9,5,10,3,11,6,7)]
tabla_final <- data_df3
###################

2.1 Pobreza por migración

datatable(tabla_final, extensions = 'Buttons', escape = FALSE, rownames = FALSE,
          options = list(dom = 'Bfrtip',
          buttons = list('colvis', list(extend = 'collection',
          buttons = list(
          list(extend='copy'),
          list(extend='excel',
            filename = 'tabla_origen_pobreza'),
          list(extend='pdf',
            filename= 'tabla_origen_pobreza')),
          text = 'Download')), scrollX = TRUE))