Casen 2006-2020 Tabla 032

¿Cuántos hijos nacidos vivos ha tenido en su vida?

Cubre del 2011 al 2017

VE-CC-AJ

DataIntelligence
date: 08-10-2021

1 Introducción técnica

Generamos tablas de contingencia en dos grupos, etnia y migración, cruzando siempre los mismos siguientes campos: alfabetistmo, sexo, comuna para variables específicas: contamos sus frecuencias. Generamos códigos asociados a las variables y agregamos una lógica para agrupar las categorías de variables en grupos menores, que cubran todos los años que existan para lograr tendencias de respuestas en forma explotatoria.

2 Introducción social

El dramático descenso de los nacimientos en el mundo tiene profundas consecuencias

El mundo no está preparado para la caída dramática en el número de nacimientos, un fenómeno que tendrá un impacto traumático en las sociedades. En 23 países, entre los que se encuentran España, Italia, Japón y Tailandia, la población se reducirá a la mitad para 2100, según las proyecciones del estudio.

Esta es la conclusión de un equipo de investigadores del Instituto de Métricas y Evaluaciones de Salud (IHME) de la Universidad de Washington, que publicó un estudio esta semana en la revista The Lancet.

La caída en los índices de fertilidad significa que casi todos los países podrían ver sus poblaciones reducidas para fines de siglo.

La población también envejecerá de forma dramática, con casi el mismo número de personas que llegan a los 80 como de personas que nacen.

DESCENSO DE LA NATALIDAD EN CHILE: UN PROBLEMA PAÍS

Un estudio socioeconómico sobre la fertilidad en Chile (7), concluye que el descenso de la mortalidad infantil perderá relevancia en los cambios de la tasa de fecundidad, y explicaría una reducción promedio de hasta 0,81 hijos mujer hasta 1985; que el costo de formar hijos, especialmente educacional, es el principal determinante del descenso de la fertilidad en matrimonios o convivencia; que el mayor ingreso familiar solo es determinante en la decisión de tener un tercer o cuarto hijo, y que el mayor ingreso al campo laboral de la mujer casada o en convivencia tiende a posponer la fertilidad de los primeros 2 hijos. Otro estudio sobre la fertilidad en Chile (8), entre otras conclusiones muestra que hay un fuerte aumento de los nacimientos fuera del matrimonio, cuya tasa se incrementa de 16 a 54% entre 1960 y 2003; la caída de la tasa de natalidad es mayor en las mujeres casadas, convergente a la tasa de las no casadas; parte importante de la caída de la natalidad no se relaciona directamente con el mayor ingreso per cápita o con mayor participación laboral de la mujer; la fuerte caída de la mortalidad infantil contribuye a reducir el número efectivo de hijos, puesto que es posible alcanzar el número deseado de hijos con menos nacimientos; la caída de la fertilidad es particularmente importante en los estratos socioeconómicos más bajos, acortando la brecha con los de mayores ingresos; los nacimientos fuera del matrimonio caracterizan preferentemente a mujeres de menor ingreso familiar; las madres solteras tienden a ser más jóvenes, vivir en el hogar paterno y desarrollar estudios o trabajo remunerado; etc.

https://www.bbc.com/mundo/noticias-53417504

https://www.scielo.cl/scielo.php?script=sci_arttext&pid=S0717-75262007000200001

3 ETNIA

3.1 Leemos las bases de datos para construir la ttcc de etnia

casen_2006 <<- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/casen_2006_c.rds")
casen_2006 <- mutate_if(casen_2006, is.factor, as.character)
casen_2009 <<- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/casen_2009_c.rds")
casen_2009 <- mutate_if(casen_2009, is.factor, as.character)
casen_2011 <<- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/casen_2011_c.rds")
casen_2011 <- mutate_if(casen_2011, is.factor, as.character)
casen_2013 <<- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/casen_2013_c.rds")
casen_2013 <- mutate_if(casen_2013, is.factor, as.character)
casen_2015 <<- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/casen_2015_c.rds")
casen_2015 <- mutate_if(casen_2015, is.factor, as.character)
casen_2017 <<- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/casen_2017_c.rds")
casen_2017 <- mutate_if(casen_2017, is.factor, as.character)
casen_2020 <<- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/casen2020.rds")
casen_2020 <- mutate_if(casen_2020, is.factor, as.character)

cod_com <- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/codigos_comunales_2006-2020.rds") 
names(cod_com)[2] <- "comuna"

3.2 Extracción

3.2.1 Extraemos un subset sólo con los campos que nos interesan:

# casen_2006 <- casen_2006[,c("EXPC",       "COMUNA","E5",    "T4",     "SEXO","E1")]
# casen_2009 <- casen_2009[,c("EXPC",       "COMUNA","E4",    "T5",     "SEXO","E1")]
casen_2011 <- casen_2011[,c("expc_full",  "comuna","s7",    "r6",     "sexo","e1","r2p_cod")]
casen_2013 <- casen_2013[,c("expc",       "comuna","s5",    "r6",     "sexo","e1","r2_p_cod")]
casen_2015 <- casen_2015[,c("expc_todas", "comuna","s4",    "r3",     "sexo","e1","r2espp_cod")]
casen_2017 <- casen_2017[,c("expc",       "comuna","s4",    "r3",     "sexo","e1","r2_p_cod")]
# casen_2020 <- casen_2020[,c("expc",       "comuna","s4",   "r3",     "sexo","e1","r2_pais_esp")]

3.3 Homologamos

3.3.1 Homologamos etnia

variable_etnia <- function(dataset){
  
variable <- switch(i,"T4","T5","r6","r6","r3","r3","r3")
  
dataset[,variable][dataset[,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] == "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 

    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 3:6) {
  
  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)
  
}

3.3.2 Homologamos alfabetismo

variable_alfa <- function(dataset){
    
variable <- switch(i,"E1","E1","e1","e1","e1","e1","e1")   
    
dataset[,variable][dataset[,variable] == "No sabe /Sin dato" ]  <- NA
dataset[,variable][dataset[,variable] == "Sí, lee y escribe" ]  <- "Sí"  
dataset[,variable][dataset[,variable] == "No, sólo lee" ]  <- "No"
dataset[,variable][dataset[,variable] == "No, ninguno" ]  <-"No"
dataset[,variable][dataset[,variable] == "No, sólo escribe" ]  <- "No"
#dataset_1 <<- dataset
 
  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 3:6) {
  
  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_alfa(casen)
}

3.3.3 Leemos el excel con la homologación

Extraemos la información contenida en el excel y construimos un código que lo autointegramos, tanto como para la homologación, como para la asignación de códigos a la variable estudiada.

# carrera
# # #primero probar con:
# carrera <- carrera[,c(1,3,4)]
# carrera
# #
# carrera <- carrera[,c(2,3)]# <- codigo numerico
# 
# carrera
# 
# dataf1 <- data.frame()
# for (n in 1:nrow(carrera)) {
#   #  dataf1 <- rbind(dataf1,paste0("dataset[,variable][dataset[,variable] ==  '",carrera[n,1],"']"," <- '",carrera[n,2],"'"))     # <- homologacion
# dataf1 <- rbind(dataf1,paste0("tab_f$cod_variable[tab_f$cod_variable ==  '",carrera[n,1],"']"," <- '",carrera[n,2],"'"))  # <- codigo numerico
# }
# dataf1 <- as.data.frame(dataf1)
# write_xlsx(dataf1,"el_total_final.xlsx")

3.3.4 Homologamos la variable

variable_en_estudio <- function(dataset){
    

variable <- switch(i,"","","s7","s5","s4","s4")   

dataset[,variable][dataset[,variable] ==  '2'] <- 'De 1 a 5'
dataset[,variable][dataset[,variable] ==  '3'] <- 'De 1 a 5'
dataset[,variable][dataset[,variable] ==  '4'] <- 'De 1 a 5'
dataset[,variable][dataset[,variable] ==  '5'] <- 'De 1 a 5'
dataset[,variable][dataset[,variable] ==  '1'] <- 'De 1 a 5'
dataset[,variable][dataset[,variable] ==  '11'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '13'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '16'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '12'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '14'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '15'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '20'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '17'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '18'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '19'] <- 'De 11 a 20'
dataset[,variable][dataset[,variable] ==  '7'] <- 'De 6 a 10'
dataset[,variable][dataset[,variable] ==  '6'] <- 'De 6 a 10'
dataset[,variable][dataset[,variable] ==  '8'] <- 'De 6 a 10'
dataset[,variable][dataset[,variable] ==  '10'] <- 'De 6 a 10'
dataset[,variable][dataset[,variable] ==  '9'] <- 'De 6 a 10'
dataset[,variable][dataset[,variable] ==  '99'] <- 'Más de 20'
dataset[,variable][dataset[,variable] ==  '22'] <- 'Más de 20'
dataset[,variable][dataset[,variable] ==  '0'] <- 'No ha tenido hijos'
dataset[,variable][dataset[,variable] ==  'No ha tenido hijos'] <- 'No ha tenido hijos'
dataset[,variable][dataset[,variable] ==  'NA'] <- 'No sabe o no responde'
dataset[,variable][dataset[,variable] ==  'No sabe'] <- 'No sabe o no responde'



  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 3:6) {
  
  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_en_estudio(casen)
}

3.3.5 Homologamos ciertas categorías asociadas a la población inmigrante

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

casen_2011$r2p_cod[casen_2011$r2p_cod == "No contesta"] <- "NS/NR"
casen_2013$r2_p_cod[casen_2013$r2_p_cod == "No contesta"] <- "NS/NR"
casen_2015$r2espp_cod[casen_2015$r2espp_cod == "No contesta"] <- "NS/NR"
casen_2017$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_2020$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"

3.3.6 Generamos las tablas de contingencia

Libres de errores lógicos

# ab <- casen_2006
# 
# b <- ab$COMUNA
# c <- ab$E5
# d <- ab$T4
# e <- ab$SEXO
# 
# 
# cross_tab =  xtabs(ab$EXPC ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$EXPC ~  unlist(b) + unlist(c) + unlist(d) + unlist(e)  ,ab,mean))
# tabla <- as.data.frame(cross_tab)
# d <-tabla[!(tabla$Freq == 0),]
# d$anio <- "2006"
#       
# names(d)[1] <- "comuna"
# names(d)[2] <- "Razon"
# names(d)[3] <- "Etnia"
# names(d)[4] <- "Sexo"
# 
# names(d)[5] <- "Frecuencia"
# names(d)[6] <- "Año"
# 
# d_2006 <- d
# 
# ab <- casen_2009
# 
# b <- ab$COMUNA
# c <- ab$E4
# d <- ab$T5
# e <- ab$SEXO
# f <- ab$E1
# 
# cross_tab =  xtabs(ab$EXPC~   unlist(b) + unlist(c)  + unlist(d) + unlist(e)  ,aggregate(ab$EXPC ~  unlist(b) + unlist(c) + unlist(d) + unlist(e)  ,ab,mean))
# 
# tabla <- as.data.frame(cross_tab)
# 
# d <-tabla[!(tabla$Freq == 0),]
# d$anio <- "2009"
# 
# names(d)[1] <- "comuna"
# names(d)[2] <- "Razon"
# names(d)[3] <- "Etnia"
# names(d)[4] <- "Sexo"
# 
# names(d)[5] <- "Frecuencia"
# names(d)[6] <- "Año"
# 
# d_2009 <- d

ab <- casen_2011

b <- ab$comuna
c <- ab$s7
d <- ab$r6
e <- ab$sexo
f <- ab$e1

cross_tab =  xtabs(ab$expc_full ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc_full ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2011"
      
names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"

names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2011 <- d

ab <- casen_2013

b <- ab$comuna
c <- ab$s5
d <- ab$r6
e <- ab$sexo
f <- ab$e1

cross_tab =  xtabs(ab$expc ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2013"
      
names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"

names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2013 <- d

ab <- casen_2015

b <- ab$comuna
c <- ab$s4
d <- ab$r3
e <- ab$sexo
f <- ab$e1

cross_tab =  xtabs(ab$expc_todas ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc_todas ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2015"
      
names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"

names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2015 <- d

ab <- casen_2017

b <- ab$comuna
c <- ab$s4
d <- ab$r3
e <- ab$sexo
f <- ab$e1

cross_tab =  xtabs(ab$expc ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2017"
      
names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Etnia"
names(d)[4] <- "Sexo"
names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2017 <- d

# ab <- casen_2020
# 
# b <- ab$comuna
# c <- ab$e6a
# d <- ab$r3
# e <- ab$sexo
# f <- ab$e1
# 
# cross_tab =  xtabs(ab$expc ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
# tabla <- as.data.frame(cross_tab)
# d <-tabla[!(tabla$Freq == 0),]
# d$anio <- "2020"
#       
# names(d)[1] <- "comuna"
# names(d)[2] <- "Estudios"
# names(d)[3] <- "Etnia"
# names(d)[4] <- "Sexo"
# 
# names(d)[6] <- "Frecuencia"
# 
# d_2020 <- d
# 
# d_2020 <- mutate_if(d_2020, is.factor, as.character)
# d_2020$`Sabe leer?`[d_2020$`Sabe leer?` == 0] <- "Sí"
# d_2020$`Sabe leer?`[d_2020$`Sabe leer?` == 1] <- "No"

3.4 Tabla final etnia homologada

Agregamos un código para nuestra variable:

union_etnia <- rbind(d_2011, d_2013, d_2015, d_2017)
union_etnia <- mutate_if(union_etnia, is.factor, as.character)
union <-union_etnia
#fn_etnia(union)

cod_com <- readRDS("C:/Users/chris/OneDrive/Documentos/archivos_grandes/codigos_comunales_2006-2020.rds") 
names(cod_com)[2] <- "comuna"
tab_f <- merge(x=union_etnia, y=cod_com, by="comuna") 
Etnia <- c(sort(unique(tab_f$Etnia)[-6]),"No pertenece a ningún pueblo indígena",NA)
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")

tab_f <- merge(x=tab_f, y=codigos, by="Etnia")
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_variable <- tab_f$Variable
tab_f$cod_variable[tab_f$cod_variable ==  'De 1 a 5'] <- '1'
tab_f$cod_variable[tab_f$cod_variable ==  'De 1 a 5'] <- '1'
tab_f$cod_variable[tab_f$cod_variable ==  'De 1 a 5'] <- '1'
tab_f$cod_variable[tab_f$cod_variable ==  'De 1 a 5'] <- '1'
tab_f$cod_variable[tab_f$cod_variable ==  'De 1 a 5'] <- '1'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 11 a 20'] <- '2'
tab_f$cod_variable[tab_f$cod_variable ==  'De 6 a 10'] <- '3'
tab_f$cod_variable[tab_f$cod_variable ==  'De 6 a 10'] <- '3'
tab_f$cod_variable[tab_f$cod_variable ==  'De 6 a 10'] <- '3'
tab_f$cod_variable[tab_f$cod_variable ==  'De 6 a 10'] <- '3'
tab_f$cod_variable[tab_f$cod_variable ==  'De 6 a 10'] <- '3'
tab_f$cod_variable[tab_f$cod_variable ==  'Más de 20'] <- '4'
tab_f$cod_variable[tab_f$cod_variable ==  'Más de 20'] <- '4'
tab_f$cod_variable[tab_f$cod_variable ==  'No ha tenido hijos'] <- '5'
tab_f$cod_variable[tab_f$cod_variable ==  'No ha tenido hijos'] <- '5'
tab_f$cod_variable[tab_f$cod_variable ==  'No sabe o no responde'] <- '6'
tab_f$cod_variable[tab_f$cod_variable ==  'No sabe o no responde'] <- '6'

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))

4 MIGRACIÓN

4.1 Generamos la tabla de contingencia

ab <- casen_2011

b <- ab$comuna
c <- ab$s7
d <- ab$r2p_cod
e <- ab$sexo
f <- ab$e1

cross_tab =  xtabs(ab$expc_full ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc_full ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2011"

names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2011 <- d

ab <- casen_2013

b <- ab$comuna
c <- ab$s5
d <- ab$r2_p_cod 
e <- ab$sexo
f <- ab$e1

cross_tab =  xtabs(ab$expc ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean)) 
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2013"

names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2013 <- d

ab <- casen_2015

b <- ab$comuna 
c <- ab$s4
d <- ab$r2espp_cod 
e <- ab$sexo 
f <- ab$e1 

 cross_tab =  xtabs(ab$expc_todas ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc_todas ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
 tabla <- as.data.frame(cross_tab)
 d <-tabla[!(tabla$Freq == 0),] 
 d$anio <- "2015"

names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2015 <- d 

ab <- casen_2017

b <- ab$comuna
c <- ab$s4
d <- ab$r2_p_cod
e <- ab$sexo
f <- ab$e1

cross_tab =  xtabs(ab$expc~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2017"

names(d)[1] <- "comuna"
names(d)[2] <- "Variable"
names(d)[3] <- "Origen"
names(d)[4] <- "Sexo"
names(d)[5] <- "Frecuencia"
names(d)[6] <- "Año"

d_2017 <- d

# ab <- casen_2020
# 
# b <- ab$comuna
# c <- ab$e6a
# d <- ab$r2_pais_esp
# e <- ab$sexo
# f <- ab$e1
# 
# cross_tab =  xtabs(ab$expc ~   unlist(b) + unlist(c)  + unlist(d) + unlist(e) ,aggregate(ab$expc ~  unlist(b) + unlist(c) + unlist(d) + unlist(e) ,ab,mean))
# tabla <- as.data.frame(cross_tab)
# d <-tabla[!(tabla$Freq == 0),]
# d$anio <- "2020"
# names(d)[1] <- "comuna"
# names(d)[2] <- "Razon"
# names(d)[3] <- "Origen"
# names(d)[4] <- "Sexo"
# 
# names(d)[6] <- "Frecuencia"
# names(d)[7] <- "Año"
# d_2020 <- d

4.2 Tabla final inmigración homologada

Agregamos un código para nuestra variable:

union_etnia <- rbind(d_2011, d_2013, d_2015, d_2017)
union_etnia <- mutate_if(union_etnia, is.factor, as.character)
union <-union_etnia

union$cod_sexo <- union$Sexo
union$cod_sexo[union$cod_sexo == "Hombre"] <- "01"
union$cod_sexo[union$cod_sexo == "Mujer"] <- "02"




union$cod_variable <- union$Variable

union$cod_variable[union$cod_variable ==  'De 1 a 5'] <- '1'
union$cod_variable[union$cod_variable ==  'De 1 a 5'] <- '1'
union$cod_variable[union$cod_variable ==  'De 1 a 5'] <- '1'
union$cod_variable[union$cod_variable ==  'De 1 a 5'] <- '1'
union$cod_variable[union$cod_variable ==  'De 1 a 5'] <- '1'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 11 a 20'] <- '2'
union$cod_variable[union$cod_variable ==  'De 6 a 10'] <- '3'
union$cod_variable[union$cod_variable ==  'De 6 a 10'] <- '3'
union$cod_variable[union$cod_variable ==  'De 6 a 10'] <- '3'
union$cod_variable[union$cod_variable ==  'De 6 a 10'] <- '3'
union$cod_variable[union$cod_variable ==  'De 6 a 10'] <- '3'
union$cod_variable[union$cod_variable ==  'Más de 20'] <- '4'
union$cod_variable[union$cod_variable ==  'Más de 20'] <- '4'
union$cod_variable[union$cod_variable ==  'No ha tenido hijos'] <- '5'
union$cod_variable[union$cod_variable ==  'No ha tenido hijos'] <- '5'
union$cod_variable[union$cod_variable ==  'No sabe o no responde'] <- '6'
union$cod_variable[union$cod_variable ==  'No sabe o no responde'] <- '6'

union <- union[union$Variable != 0, ]

datatable(union, 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'),
          list(extend='pdf',
            filename= 'tabla')),
          text = 'Download')), scrollX = TRUE))