1 Introducción
El procedimiento de generación de tablas de contingencia trae problemas si se consideran varias tablas referidas por ejemplo a varios años, cuyas categorías de divergen.
Ésta pregunta sólo se comenzó a aplicar en la Casen del 2006 y hasta la versión 2017
<<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/casen_2006_c.rds")
casen_2006 <- mutate_if(casen_2006, is.factor, as.character)
casen_2006 <<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/casen_2009_c.rds")
casen_2009 <- mutate_if(casen_2009, is.factor, as.character)
casen_2009 <<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/casen_2011_c.rds")
casen_2011 <- mutate_if(casen_2011, is.factor, as.character)
casen_2011 <<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/casen_2013_c.rds")
casen_2013 <- mutate_if(casen_2013, is.factor, as.character)
casen_2013 <<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/casen_2015_c.rds")
casen_2015 <- mutate_if(casen_2015, is.factor, as.character)
casen_2015 <<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/casen_2017_c.rds")
casen_2017 <- mutate_if(casen_2017, is.factor, as.character)
casen_2017 <<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/casen/casen_2020_c.rds")
casen_2020 <- mutate_if(casen_2020, is.factor, as.character)
casen_2020
<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/codigos_comunales_2006-2020.rds")
cod_com names(cod_com)[2] <- "comuna"
<- c("O3","O3","o3","o3","o3","o3","o3")
vv <- casen_2006[,c("EXPC", "COMUNA" ,vv[1], "T4","SEXO","E1")]
casen_2006 <- casen_2009[,c("EXPC", "COMUNA" ,vv[2], "T5","SEXO","E1")]
casen_2009 <- casen_2011[,c("expc_full", "comuna" ,vv[3], "r6","sexo","e1","r2p_cod")]
casen_2011 <- casen_2013[,c("expc", "comuna" ,vv[4], "r6","sexo","e1","r2_p_cod")]
casen_2013 <- casen_2015[,c("expc_todas", "comuna" ,vv[5], "r3","sexo","e1","r2espp_cod")]
casen_2015 <- casen_2017[,c("expc", "comuna" ,vv[6], "r3","sexo","e1","r2_p_cod")]
casen_2017 <- casen_2020[,c("expc", "comuna" ,vv[7], "r3","sexo","e1","r2_pais_esp")] casen_2020
Homologación de alfabetismo
$E1[casen_2006$E1 == "No sabe /Sin dato"] <- NA
casen_2006$e1[casen_2011$e1 == "Sí, lee y escribe"] <- "Sí"
casen_2011$e1[casen_2011$e1 == "No, sólo lee"] <- "No"
casen_2011$e1[casen_2011$e1 == "No, ninguno"] <- "No"
casen_2011$e1[casen_2011$e1 == "No, sólo escribe"] <- "No"
casen_2011$e1[casen_2013$e1 == "Sí, lee y escribe"] <- "Sí"
casen_2013$e1[casen_2013$e1 == "No, ninguno"] <- "No"
casen_2013$e1[casen_2013$e1 == "No, sólo lee"] <- "No"
casen_2013$e1[casen_2013$e1 == "No, sólo escribe"] <- "No"
casen_2013$e1[casen_2013$e1 == "NS/NR"] <- NA
casen_2013$e1[casen_2015$e1 == "Sí, lee y escribe"] <- "Sí"
casen_2015$e1[casen_2015$e1 == "No, ninguno"] <- "No"
casen_2015$e1[casen_2015$e1 == "No, sólo lee"] <- "No"
casen_2015$e1[casen_2015$e1 == "No, sólo escribe"] <- "No"
casen_2015$e1[casen_2017$e1 == "Sí, lee y escribe"] <- "Sí"
casen_2017$e1[casen_2017$e1 == "No, sólo lee"] <- "No"
casen_2017$e1[casen_2017$e1 == "No, ninguno"] <- "No"
casen_2017$e1[casen_2017$e1 == "No sabe/responde"] <- NA
casen_2017$e1[casen_2017$e1 == "No, sólo escribe"] <- "No"
casen_2017$e1[casen_2020$e1 == 1] <- "Sí"
casen_2020$e1[casen_2020$e1 == 0] <- "No" casen_2020
Homologación de etnia
<- function(dataset){
variable_etnia
<- switch(i,"T4","T5","r6","r6","r3","r3","r3")
variable
== "Aimara" ] <- "Aymara"
dataset[,variable][dataset[,variable] == "No pertenece a ninguno de estos pueblos indígenas" ] <- "No pertenece a ningún pueblo indígena"
dataset[,variable][dataset[,variable] == "Mapuche"] <- "Mapuche"
dataset[,variable][dataset[,variable] == "Diaguita"] <- "Diaguita"
dataset[,variable][dataset[,variable] == "Atacameño (Likan-Antai)" ] <- "Atacameño"
dataset[,variable][dataset[,variable] == "Atacameño (Likán Antai)" ] <- "Atacameño"
dataset[,variable][dataset[,variable] == "Atacameño (Likán-Antai)" ] <- "Atacameño"
dataset[,variable][dataset[,variable] == "Yámana o Yagán" ] <- "Yagán"
dataset[,variable][dataset[,variable] == "Yagan" ] <- "Yagán"
dataset[,variable][dataset[,variable] == "Yagán (Yámana)" ] <- "Yagán"
dataset[,variable][dataset[,variable] == "Rapa-Nui o Pascuenses"] <- "Pascuense"
dataset[,variable][dataset[,variable] == "Rapa-Nui"] <- "Pascuense"
dataset[,variable][dataset[,variable] == "Rapa Nui (Pascuense)"] <- "Pascuense"
dataset[,variable][dataset[,variable] == "Rapa Nui"] <- "Pascuense"
dataset[,variable][dataset[,variable] == "Collas"] <- "Coya"
dataset[,variable][dataset[,variable] == "Kawashkar o Alacalufes" ] <- "Alacalufe"
dataset[,variable][dataset[,variable] == "Kawashkar" ] <- "Alacalufe"
dataset[,variable][dataset[,variable] == "Kawésqar (Alacalufes)" ] <- "Alacalufe"
dataset[,variable][dataset[,variable] == "Kawésqar" ] <- "Alacalufe"
dataset[,variable][dataset[,variable] == "Kawaskar" ] <- "Alacalufe"
dataset[,variable][dataset[,variable] == "Sin dato"] <- NA
dataset[,variable][dataset[,variable] == "NS/NR" ] <- NA
dataset[,variable][dataset[,variable] == "No sabe/no responde" ] <- NA
dataset[,variable][dataset[,variable]
switch(i,
case = casen_2006 <<- dataset,
case = casen_2009 <<- dataset,
case = casen_2011 <<- dataset,
case = casen_2013 <<- dataset,
case = casen_2015 <<- dataset,
case = casen_2017 <<- dataset,
case = casen_2020 <<- dataset
)
}
for (i in 1:7) {
switch(i,
case = casen <- casen_2006,
case = casen <- casen_2009,
case = casen <- casen_2011,
case = casen <- casen_2013,
case = casen <- casen_2015,
case = casen <- casen_2017,
case = casen <- casen_2020
)
variable_etnia(casen)
}
Homologación de migración
for (i in unique(casen_2020$r2_pais_esp)) {
<- gsub("(^[[:space:]]+|[[:space:]]+$)", "", i)
pais <- tolower(pais)
pais $r2_pais_esp[casen_2020$r2_pais_esp == i] <- str_to_title(pais)
casen_2020
}
$r2p_cod[casen_2011$r2p_cod == "No contesta"] <- "NS/NR"
casen_2011$r2_p_cod[casen_2013$r2_p_cod == "No contesta"] <- "NS/NR"
casen_2013$r2espp_cod[casen_2015$r2espp_cod == "No contesta"] <- "NS/NR"
casen_2015$r2_p_cod[casen_2017$r2_p_cod == "No Bien Especificado"] <- "NS/NR"
casen_2017$r2_p_cod[casen_2017$r2_p_cod == "No Responde"] <- "NS/NR"
casen_2017$r2_pais_esp[casen_2020$r2_pais_esp == "No Bien Especificado"] <- "NS/NR"
casen_2020$r2_pais_esp[casen_2020$r2_pais_esp == ""] <- NA
casen_2020$r2_pais_esp[casen_2020$r2_pais_esp == "No Responde"] <- "NS/NR" casen_2020
1.0.1 2006
<- casen_2006
ab
<- ab$COMUNA
b <- ab$O3
c <- ab$T4
d <- ab$SEXO
e <- ab$E1
f
= xtabs(ab$EXPC ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$EXPC ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2006"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d
d_2006
<- mutate_if(d_2006, is.factor, as.character) d_2006
1.0.2 2009
Generamos las tablas de contingencia tal como acostumbramos:
<- casen_2009
ab
<- ab$COMUNA
b <- ab$O3
c <- ab$T5
d <- ab$SEXO
e <- ab$E1
f
= xtabs(ab$EXPC~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$EXPC ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab
<- as.data.frame(cross_tab)
tabla
<-tabla[!(tabla$Freq == 0),]
d $anio <- "2009"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2009
1.0.3 2011
Generamos las tablas de contingencia tal como acostumbramos:
<- casen_2011
ab
<- ab$comuna
b <- ab$o3
c <- ab$r6
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc_full ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc_full ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2011"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2011
1.0.4 2013
Generamos las tablas de contingencia tal como acostumbramos:
<- casen_2013
ab
<- ab$comuna
b <- ab$o3
c <- ab$r6
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2013"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2013
1.0.5 2015
Generamos las tablas de contingencia tal como acostumbramos:
<- casen_2015
ab
<- ab$comuna
b <- ab$o3
c <- ab$r3
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc_todas ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc_todas ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2015"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2015
1.0.6 2017
Generamos las tablas de contingencia tal como acostumbramos:
<- casen_2017
ab
<- ab$comuna
b <- ab$o3
c <- ab$r3
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2017"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2017
1.0.7 2020
Generamos las tablas de contingencia tal como acostumbramos:
<- casen_2020
ab
<- ab$comuna
b <- ab$o3
c <- ab$r3
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2020"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2020
Unimos y desplegamos la tabla corregida:
2 Tabla final etnia homologada
<- rbind(d_2006,d_2009, d_2011, d_2013, d_2015, d_2017, d_2020)
union_etnia <- mutate_if(union_etnia, is.factor, as.character) union_etnia
#fn_etnia(union)
<- readRDS("C:/Users/enamo/Desktop/Shiny-R/Casen_en_pandemia_2020/codigos_comunales_2006-2020.rds")
cod_com names(cod_com)[2] <- "comuna"
<- merge(x=union_etnia, y=cod_com, by="comuna")
tab_f
$cod_etnia[tab_f$Etnia == "Alacalufe" ] <- "01"
tab_f$cod_etnia[tab_f$Etnia == "Atacameño" ] <- "02"
tab_f$cod_etnia[tab_f$Etnia == "Aymara" ] <- "03"
tab_f$cod_etnia[tab_f$Etnia == "Chango" ] <- "04"
tab_f$cod_etnia[tab_f$Etnia == "Coya" ] <- "05"
tab_f$cod_etnia[tab_f$Etnia == "Diaguita" ] <- "06"
tab_f$cod_etnia[tab_f$Etnia == "Mapuche" ] <- "07"
tab_f$cod_etnia[tab_f$Etnia == "Pascuense" ] <- "08"
tab_f$cod_etnia[tab_f$Etnia == "Quechua" ] <- "09"
tab_f$cod_etnia[tab_f$Etnia == "Yagán" ] <- "10"
tab_f$cod_etnia[tab_f$Etnia == "No pertenece a ningún pueblo indígena" ] <- "11"
tab_f$cod_etnia[tab_f$Etnia == NA ] <- "12"
tab_f
$cod_sexo <- tab_f$Sexo
tab_f$cod_sexo[tab_f$cod_sexo == "Hombre"] <- "01"
tab_f$cod_sexo[tab_f$cod_sexo == "Mujer"] <- "02"
tab_f
$cod_alfa <- tab_f$`Sabe leer?`
tab_f$cod_alfa[tab_f$cod_alfa == "Sí"] <- "01"
tab_f$cod_alfa[tab_f$cod_alfa == "No"] <- "02"
tab_f
$cod_variable <- tab_f$variable
tab_f$cod_variable[tab_f$cod_variable == "Sí"] <- "01"
tab_f$cod_variable[tab_f$cod_variable == "No"] <- "02"
tab_f
datatable(tab_f, 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_ytotcor_e5a'),
list(extend='pdf',
filename= 'tabla_ytotcor_e5a')),
text = 'Download')), scrollX = TRUE))
3 MIGRA
3.0.1 2011
Generamos las tablas de contingencia tal como acostumbramos:
<- casen_2011
ab
<- ab$comuna
b <- ab$o3
c <- ab$r2p_cod
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc_full ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc_full ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2011"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2011
3.0.2 2013
<- casen_2013
ab
<- ab$comuna
b <- ab$o3
c <- ab$r2_p_cod
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2013"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2013
3.0.3 2015
<- casen_2015
ab
<- ab$comuna
b <- ab$o3
c <- ab$r2espp_cod
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc_todas ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc_todas ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2015"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2015
3.0.4 2017
<- casen_2017
ab
<- ab$comuna
b <- ab$o3
c <- ab$r2_p_cod
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f) ,ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2017"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2017
3.0.5 2020
<- casen_2020
ab
<- ab$comuna
b <- ab$o3
c <- ab$r2_pais_esp
d <- ab$sexo
e <- ab$e1
f
= xtabs(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),aggregate(ab$expc ~ unlist(b) + unlist(c) + unlist(d) + unlist(e) + unlist(f),ab,mean))
cross_tab <- as.data.frame(cross_tab)
tabla <-tabla[!(tabla$Freq == 0),]
d $anio <- "2020"
d
names(d)[1] <- "comuna"
names(d)[2] <- "variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Sabe leer?"
names(d)[6] <- "Frecuencia"
names(d)[7] <- "Año"
<- d d_2020
Unimos y desplegamos la tabla corregida:
4 Tabla final inmigración homologada
<- rbind(d_2011, d_2013, d_2015, d_2017, d_2020)
union_etnia <- mutate_if(union_etnia, is.factor, as.character)
union
$cod_sexo <- union$Sexo
union$cod_sexo[union$cod_sexo == "Hombre"] <- "01"
union$cod_sexo[union$cod_sexo == "Mujer"] <- "02"
union
$cod_alfa <- union$`Sabe leer?`
union$cod_alfa[union$cod_alfa == "Sí"] <- "01"
union$cod_alfa[union$cod_alfa == "No"] <- "02"
union
$cod_variable <- union$variable
union$cod_variable[union$cod_variable == "Sí"] <- "01"
union$cod_variable[union$cod_variable == "No"] <- "02"
union
<- union
tab_f
datatable(tab_f, 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_ytotcor_e5a'),
list(extend='pdf',
filename= 'tabla_ytotcor_e5a')),
text = 'Download')), scrollX = TRUE))