Lectura de tablas Casen

dataset_2006 <- readRDS(file = "casen_2006_c.rds")
dataset_2006 <- dataset_2006[,c("COMUNA","T14A","T14B","QAUT","DAU","T4","E1","SEXO","EXPC")]

dataset_2009 <- readRDS(file = "casen_2009_c.rds")
dataset_2009 <- dataset_2009[,c("COMUNA","T16PT","T16MT","QAUT","DAU","T5","E1","SEXO","EXPC")]

dataset_2011 <- readRDS(file = "casen_2011_c.rds")
dataset_2011 <- dataset_2011[,c("comuna","r5pn","r4mn","qaut","daut","r6","e1","sexo","expc_full")]

dataset_2013 <- readRDS(file = "casen_2013_c.rds")
dataset_2013 <- dataset_2013[,c("comuna","r4pn","r4mn","QAUT_MN","DAU_MN","r6","e1","sexo","expc")]

dataset_2015 <- readRDS(file = "casen_2015_c.rds")
dataset_2015 <- dataset_2015[,c("comuna","r10b","r10a","qaut","dau","r3","e1","sexo","expc_todas")]

dataset_2017 <- readRDS(file = "casen_2017_c.rds")
dataset_2017 <- dataset_2017[,c("comuna","r12b","r12a","qaut","dau","r3","e1","sexo","expc")]



0. Nivel educacional (padre)/decil

¿Cuál fue el máximo nivel educacional que completó? Su Padre

funcion1 <- function(n){
  
  
  comunales<-switch(n, "codigos_comunales_2006.rds","codigos_comunales_2009.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds")
 xx<-switch(n, "2006","2009","2011","2013","2015","2017")
 # dataset_06 <<- NA


 if(xx==2006) {
  eliminated <- dataset_2006
a <- eliminated$DAU
b <- eliminated$COMUNA
c <- eliminated$T14A
d <- eliminated$E1 #alfabetismo
e <- eliminated$T4 #etnia
f <- eliminated$SEXO
anio <- 2006
cross_tab =  xtabs(eliminated$EXPC ~ +  unlist(a) +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~ +  unlist(a) +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

 if(xx==2009) {
  eliminated <- dataset_2009
a <- eliminated$DAU
b <- eliminated$COMUNA
c <- eliminated$T16PT
d <- eliminated$E1 #alfabetismo
e <- eliminated$T5 #etnia
f <- eliminated$SEXO
anio <- 2009
cross_tab =  xtabs(eliminated$EXPC ~ +  unlist(a) +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~ +  unlist(a) +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
 }

if(xx==2011) {
  eliminated <- dataset_2011
a <- eliminated$daut
b <- eliminated$comuna
c <- eliminated$r5pn
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2011
cross_tab =  xtabs(eliminated$expc_full ~ +  unlist(a) +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_full ~ +  unlist(a) +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2013) {
  eliminated <- dataset_2013
a <- eliminated$DAU_MN
b <- eliminated$comuna
c <- eliminated$r4pn
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2013
cross_tab =  xtabs(eliminated$expc ~ +  unlist(a) +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~ +  unlist(a) +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2015) {
  eliminated <- dataset_2015
a <- eliminated$dau
b <- eliminated$comuna
c <- eliminated$r10b
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2015
cross_tab =  xtabs(eliminated$expc_todas ~ +  unlist(a) +  unlist(a) +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_todas ~ +  unlist(a) +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2017) {
  eliminated <- dataset_2017
a <- eliminated$dau
b <- eliminated$comuna
c <- eliminated$r12b
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2017
cross_tab =  xtabs(eliminated$expc ~ +  unlist(a) +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~ +  unlist(a) +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}



tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$Año <- anio

names(d)[1] <- "decil"
names(d)[2] <- "Comuna"
names(d)[3] <- "nivel_educ_padre"
names(d)[4] <- "Alfabetismo"
names(d)[5] <- "Etnia"
names(d)[6] <- "sexo"
codigos_comunales <- readRDS(file = comunales)
names(codigos_comunales)[1] <- "Código"
names(codigos_comunales)[2] <- "Comuna"
# codigos_comunales

df = merge( x = d, y = codigos_comunales, by = "Comuna", all.x = TRUE)

ingreso_rds <- paste("tablas_peque/decil_nivel_educ_padre_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)

# print(head(df,10))

}

for (n in 1:6){
  funcion1(n)
}

0.1 Tratamientos

0.1.1 Union de tablas chicas

Homologación de categorías de respuesta con código independiente para la variable de estudio de la ttcc y creación de la tabla general.

receptaculo <- data.frame()
for (n in 1 : 6){
    numero <- switch(n, "2006","2009","2011","2013","2015","2017")
    direc_tablas <- paste("tablas_peque/decil_nivel_educ_padre_",numero,".rds", sep="")
    tablas <- readRDS(direc_tablas)

    receptaculo <<- rbind(receptaculo, tablas)

}

0.1.2 creaccion Diccionario

Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna a la que se le hará el diccionario, luego se guarda como xlsx para hacer el tratamiento

# receptaculo_unicos <- unique(receptaculo$nivel_educ_padre)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_nivel_educ_padre.xlsx")

0.2 Diccionarios

0.2.1 Diccionario alfabetismo

alfabetismo <- read_xlsx("diccionario/alfabetismo_unicos.xlsx")

kbl(alfabetismo) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Alfabetismo cat_alfa codigo_alfabetismo
No No 002
No, sólo lee No 002
No, ninguno No 002
No, sólo escribe No 002
No sabe /Sin dato NS/NR 003
NS/NR NS/NR 003
No sabe/responde NS/NR 003
001
Sí, lee y escribe 001

0.2.2 Diccionario etnia

categorias <- read_xlsx("diccionario/categorias_etnia.xlsx")

kbl(categorias) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Etnia categorias_etnicas codigo_etnia
Kawashkar o Alacalufes Alacalufes 001
Kawaskar Alacalufes 001
Kawésqar Alacalufes 001
Kawésqar (Alacalufes) Alacalufes 001
Atacameño Atacameño 002
Atacameño (Likán Antai) Atacameño 002
Atacameño (Likan-Antai) Atacameño 002
Atacameño (Likán-Antai) Atacameño 002
Aimara Aymara 003
Aymara Aymara 003
Collas Coya 004
Coya Coya 004
Diaguita Diaguita 005
Mapuche Mapuche 006
No pertenece a ningún pueblo indígena No pertenece a ningún pueblo indígena 007
No sabe/no responde No pertenece a ningún pueblo indígena 007
NS/NR No pertenece a ningún pueblo indígena 007
Sin dato No pertenece a ningún pueblo indígena 007
Rapa Nui Pascuense 008
Rapa Nui (Pascuense) Pascuense 008
Rapa-Nui o Pascuenses Pascuense 008
Quechua Quechua 009
Yagan Yagán 010
Yagán Yagán 010
Yagán (Yámana) Yagán 010
Yámana o Yagán Yagán 010

0.2.3 Diccionario padre

cat_disc <- read_xlsx("diccionario/diccionario_nivel_educ_padre.xlsx")

kbl(cat_disc) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
nivel_educ_padre cat_nivel_educ_padre
Educación Básica Básica
Educación básica (preparatoria) Básica
Preparatoria Básica
Primaria o Preparatoria (S. Antiguo) Básica
Primaria o Preparatoria (sistema antiguo) Básica
Educación Parvularia Educación Parvularia
Educación universitaria Educación universitaria
Educ. media científico humanista Media
Educ. media técnica profesional Media
Educación media CH-TP (humanidades) Media
Educación Media Científico-Humanista Media
Humanidades (S. Antiguo) Media
Humanidades (Sist. antiguo) Media
Humanidades (sistema antiguo) Media
Educación Media Técnica Profesional Media tecnica
No aplica NA
No estudió (incluye preparatoria o básica incompleta) NA
No sabe NA
No sabe no recuerda NA
No sabe/No recuerda NA
Ninguno Ninguno
Nunca asistió Nunca asistió
Postgrado Postgrado
Profesional Profesional
Profesional (carrera de 4 ó más años) Profesional
Universitario Profesional
Centro de formación técnica (CFT) Profesional tecnica
Educación técnica de nivel superior Profesional tecnica
Instituto Profesional Profesional tecnica
Técnica, comercial, industrial o normalista Profesional tecnica
Técnica, Comercial, Industrial o Normalista (S. Antiguo) Profesional tecnica
Técnica, Comercial, Industrial o Normalista (sistema antiguo) Profesional tecnica
Técnica, Comercial, Industrial, Normalista (S. Antiguo) Profesional tecnica
Técnico Nivel Superior Profesional tecnica
Técnico Nivel Superior (carrera de 1 a 3 año) Profesional tecnica
Técnico Nivel Superior (carrera de 1 a 3 años) Profesional tecnica

0.3 Unificación de categorías

cod_cat <- unique(cat_disc$cat_nivel_educ_padre)
cod_cat<- as.data.frame(cod_cat)

rango <- seq(1:nrow(cod_cat))
cadena<- paste("000",seq(1:nrow(cod_cat)), sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(4-2),5)

cod_cat$codigo_nivel_educ_padre <- cadena
names(cod_cat)[1] <- "cat_nivel_educ_padre"

cat_disc = merge( x = cat_disc, y = cod_cat, by = "cat_nivel_educ_padre", all.x = TRUE)
cat_disc <- cat_disc[,c(2,1,3)]


nuevas_cat = merge( x = receptaculo, y = alfabetismo, by = "Alfabetismo", all.x = TRUE)
alfa_corr <- nuevas_cat[,c(-1)]


categoriasbuenas = merge( x = alfa_corr, y = categorias, by = "Etnia", all.x = TRUE)
etnia_corr <- categoriasbuenas[,c(-1)]

categoriasbuenas = merge( x = etnia_corr, y = cat_disc, by = "nivel_educ_padre", all.x = TRUE)
discapacidad_corr <- categoriasbuenas[,c(-1)]


receptaculo<-discapacidad_corr[,c(1,2,11,12,10,9,7,8,3,4,5,6)]

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

names(receptaculo)[1] <- "comuna"
names(receptaculo)[3] <- "nivel_educ_padre"
names(receptaculo)[5] <- "etnia"
names(receptaculo)[7] <- "alfabetismo"
names(receptaculo)[9] <- "sexo"
names(receptaculo)[10] <- "frec"
names(receptaculo)[11] <- "anio"
names(receptaculo)[12] <- "codigo_comuna"

receptaculo_tab  <- receptaculo[1:30,]
kbl(receptaculo_tab) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "500px")
comuna decil nivel_educ_padre codigo_nivel_educ_padre etnia categorias_etnicas alfabetismo codigo_alfabetismo sexo frec anio codigo_comuna
San José de Maipo VII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 13 2009 13203
Cartagena I Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 44 2009 05603
Chanco V Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 10 2009 07202
Cerro Navia IX Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 109 2009 13103
Lampa VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 137 2009 13302
Zapallar II Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 4 2009 05405
Providencia VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 222 2009 13123
Frutillar IX Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 46 2009 10105
Las Condes IX Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 477 2009 13114
Santa María VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 16 2009 05706
Olmué VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 21 2009 05803
Concepción VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 704 2009 08101
La Cisterna V Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 66 2009 13109
San José de Maipo I Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 11 2009 13203
Arica IV Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 122 2009 15101
Conchalí II Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 65 2009 13104
San Pedro de Atacama VI Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 7 2009 02203
Lebu V Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 71 2009 08201
San Miguel VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 385 2009 13130
Quilpué VI Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 133 2009 05801
Puchuncaví X Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 23 2009 05105
Santa María VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 16 2009 05706
La Reina X Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 356 2009 13113
Viña del Mar V Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 244 2009 05109
Puyehue X Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 16 2009 10304
Talagante IX Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 63 2009 13601
La Serena VIII Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 109 2009 04101
Papudo V Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 5 2009 05403
Vicuña IV Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Mujer 45 2009 04106
Las Condes I Profesional tecnica 011 007 No pertenece a ningún pueblo indígena 001 Hombre 255 2009 13114

0.3.1 Guardado de tablas

El siguiente código establece una conexión con nuestra base de datos en postgres donde estaremos guardando la tabla resultado del código previo. También se guardará la tabla de forma local en formato xlsx

# db <- 'trabajo-con-casen'  #provide the name of your db
# host_db <- 'post-to-r.postgres.database.azure.com' #i.e. # i.e. 'ec2-54-83-201-96.compute-1.amazonaws.com'  
# db_port <- '5432'  # or any other port specified by the DBA
# db_user <- 'yomismo@post-to-r'  
# db_password <- '123456Fg*'
# con <- dbConnect(RPostgres::Postgres(), dbname = db, host=host_db, port=db_port, user=db_user, password=db_password) 
# 
# library('RPostgreSQL')
# # tn <- 'links'
# dbWriteTable(con,'entrega_5_decil_nivel_educ_padre',receptaculo, row.names=FALSE)

write_xlsx(receptaculo,"tablas_grandes/entrega_4_decil_nivel_educ_padre.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/decil_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande

0.4 Gráficos

0.4.1 Gráfico I

p1 <- plot_ly(receptaculo , x = ~anio , color = ~nivel_educ_padre) %>% add_histogram() %>%
    layout(title = "Ha tenido enfermedad o accidente",
         xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

0.4.2 Gráfico II

p2 <- plot_ly(receptaculo , x = ~etnia , color = ~nivel_educ_padre)  %>% add_histogram()%>%
    layout(title = "Discapacidad por grupo etnico",
         xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors



1. Nivel educacional (padre)

¿Cuál fue el máximo nivel educacional que completó?

funcion1 <- function(n){


  comunales<-switch(n, "codigos_comunales_2006.rds","codigos_comunales_2009.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds")
 xx<-switch(n, "2006","2009","2011","2013","2015","2017")
 # dataset_06 <<- NA


 if(xx==2006) {
  eliminated <- dataset_2006
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$T14A
d <- eliminated$E1 #alfabetismo
e <- eliminated$T4 #etnia
f <- eliminated$SEXO
anio <- 2006
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

 if(xx==2009) {
  eliminated <- dataset_2009
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$T16PT
d <- eliminated$E1 #alfabetismo
e <- eliminated$T5 #etnia
f <- eliminated$SEXO
anio <- 2009
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
 }

if(xx==2011) {
  eliminated <- dataset_2011
# a <- eliminated$ytotaj
b <- eliminated$comuna
c <- eliminated$r5pn
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2011
cross_tab =  xtabs(eliminated$expc_full ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_full ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2013) {
  eliminated <- dataset_2013
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$r4pn
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2013
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2015) {
  eliminated <- dataset_2015
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$r10b
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2015
cross_tab =  xtabs(eliminated$expc_todas ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_todas ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2017) {
  eliminated <- dataset_2017
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$r12b
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2017
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}



tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$Año <- anio

names(d)[1] <- "Comuna"
names(d)[2] <- "nivel_educ_padre"
names(d)[3] <- "Alfabetismo"
names(d)[4] <- "Etnia"
names(d)[5] <- "sexo"
codigos_comunales <- readRDS(file = comunales)
names(codigos_comunales)[1] <- "Código"
names(codigos_comunales)[2] <- "Comuna"
# codigos_comunales

df = merge( x = d, y = codigos_comunales, by = "Comuna", all.x = TRUE)

ingreso_rds <- paste("tablas_peque/nivel_educ_padre_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)

# print(head(df,10))

}

for (n in 1:6){
  funcion1(n)
}

1.1 Tratamientos

1.1.1 Union de tablas

Homologación de categorías de respuesta con código independiente para la variable de estudio de la ttcc y creación de la tabla general.

receptaculo <- data.frame()
for (n in 1 : 6){
    numero <- switch(n, "2006","2009","2011","2013","2015","2017")
    direc_tablas <- paste("tablas_peque/nivel_educ_padre_",numero,".rds", sep="")
    tablas <- readRDS(direc_tablas)

    receptaculo <<- rbind(receptaculo, tablas)

}

1.1.2 Diccionario

Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna a la que se le hará el diccionario, luego se guarda como xlsx para hacer el tratamiento

# receptaculo_unicos <- unique(receptaculo$enfermedad_accidente)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# write_xlsx(receptaculo_unicos,"diccionario/unico_enfermedad_accidente.xlsx")

1.2 Diccionarios

1.2.1 Diccionario alfabetismo

alfabetismo <- read_xlsx("diccionario/alfabetismo_unicos.xlsx")

kbl(alfabetismo) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Alfabetismo cat_alfa codigo_alfabetismo
No No 002
No, sólo lee No 002
No, ninguno No 002
No, sólo escribe No 002
No sabe /Sin dato NS/NR 003
NS/NR NS/NR 003
No sabe/responde NS/NR 003
001
Sí, lee y escribe 001

1.2.2 Diccionario etnia

categorias <- read_xlsx("diccionario/categorias_etnia.xlsx")

kbl(categorias) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Etnia categorias_etnicas codigo_etnia
Kawashkar o Alacalufes Alacalufes 001
Kawaskar Alacalufes 001
Kawésqar Alacalufes 001
Kawésqar (Alacalufes) Alacalufes 001
Atacameño Atacameño 002
Atacameño (Likán Antai) Atacameño 002
Atacameño (Likan-Antai) Atacameño 002
Atacameño (Likán-Antai) Atacameño 002
Aimara Aymara 003
Aymara Aymara 003
Collas Coya 004
Coya Coya 004
Diaguita Diaguita 005
Mapuche Mapuche 006
No pertenece a ningún pueblo indígena No pertenece a ningún pueblo indígena 007
No sabe/no responde No pertenece a ningún pueblo indígena 007
NS/NR No pertenece a ningún pueblo indígena 007
Sin dato No pertenece a ningún pueblo indígena 007
Rapa Nui Pascuense 008
Rapa Nui (Pascuense) Pascuense 008
Rapa-Nui o Pascuenses Pascuense 008
Quechua Quechua 009
Yagan Yagán 010
Yagán Yagán 010
Yagán (Yámana) Yagán 010
Yámana o Yagán Yagán 010

1.2.3 Diccionario

cat_disc <- read_xlsx("diccionario/diccionario_nivel_educ_padre.xlsx")

kbl(cat_disc) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
nivel_educ_padre cat_nivel_educ_padre
Educación Básica Básica
Educación básica (preparatoria) Básica
Preparatoria Básica
Primaria o Preparatoria (S. Antiguo) Básica
Primaria o Preparatoria (sistema antiguo) Básica
Educación Parvularia Educación Parvularia
Educación universitaria Educación universitaria
Educ. media científico humanista Media
Educ. media técnica profesional Media
Educación media CH-TP (humanidades) Media
Educación Media Científico-Humanista Media
Humanidades (S. Antiguo) Media
Humanidades (Sist. antiguo) Media
Humanidades (sistema antiguo) Media
Educación Media Técnica Profesional Media tecnica
No aplica NA
No estudió (incluye preparatoria o básica incompleta) NA
No sabe NA
No sabe no recuerda NA
No sabe/No recuerda NA
Ninguno Ninguno
Nunca asistió Nunca asistió
Postgrado Postgrado
Profesional Profesional
Profesional (carrera de 4 ó más años) Profesional
Universitario Profesional
Centro de formación técnica (CFT) Profesional tecnica
Educación técnica de nivel superior Profesional tecnica
Instituto Profesional Profesional tecnica
Técnica, comercial, industrial o normalista Profesional tecnica
Técnica, Comercial, Industrial o Normalista (S. Antiguo) Profesional tecnica
Técnica, Comercial, Industrial o Normalista (sistema antiguo) Profesional tecnica
Técnica, Comercial, Industrial, Normalista (S. Antiguo) Profesional tecnica
Técnico Nivel Superior Profesional tecnica
Técnico Nivel Superior (carrera de 1 a 3 año) Profesional tecnica
Técnico Nivel Superior (carrera de 1 a 3 años) Profesional tecnica

1.3 Unificación de categorías

cod_cat <- unique(cat_disc$cat_nivel_educ_padre)
cod_cat<- as.data.frame(cod_cat)

rango <- seq(1:nrow(cod_cat))
cadena<- paste("000",seq(1:nrow(cod_cat)), sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(4-2),5)

cod_cat$codigo_nivel_educ_padre <- cadena
names(cod_cat)[1] <- "cat_nivel_educ_padre"

cat_disc = merge( x = cat_disc, y = cod_cat, by = "cat_nivel_educ_padre", all.x = TRUE)
cat_disc <- cat_disc[,c(2,1,3)]



nuevas_cat = merge( x = receptaculo, y = alfabetismo, by = "Alfabetismo", all.x = TRUE)
alfa_corr <- nuevas_cat[,c(-1)]


categoriasbuenas = merge( x = alfa_corr, y = categorias, by = "Etnia", all.x = TRUE)
etnia_corr <- categoriasbuenas[,c(-1)]

categoriasbuenas = merge( x = etnia_corr, y = cat_disc, by = "nivel_educ_padre", all.x = TRUE)
discapacidad_corr <- categoriasbuenas[,c(-1)]

receptaculo<-discapacidad_corr[,c(1,10,11,8,9,6,7,2,3,4,5)]

names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "nivel_educ_padre"
names(receptaculo)[4] <- "etnia"
names(receptaculo)[6] <- "alfabetismo"
names(receptaculo)[8] <- "sexo"
names(receptaculo)[9] <- "frec"
names(receptaculo)[10] <- "anio"
names(receptaculo)[11] <- "codigo_comuna"

receptaculo_tab <- receptaculo[1:30,]
kbl(receptaculo_tab) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "500px")
comuna nivel_educ_padre codigo_nivel_educ_padre etnia codigo_etnia alfabetismo codigo_alfabetismo sexo frec anio codigo_comuna
San Pedro de la Paz Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 109 2009 08108
Puente Alto Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 1280 2009 13201
San Antonio Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 384 2009 05601
Chillán Viejo Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 37 2009 16103
Primavera Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 2 2009 12302
Lampa Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 314 2009 13302
Chile Chico Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 11 2009 11401
Lanco Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 19 2009 14103
Cochamó Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 15 2009 10103
Placilla Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 71 2009 06308
Maipú Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 2660 2009 13119
Aysén Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 22 2009 11201
Cauquenes Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 50 2009 07201
Licantén Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 27 2009 07303
Puyehue Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 16 2009 10304
Las Condes Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 2389 2009 13114
Hualpén Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 184 2009 08112
Quilaco Profesional tecnica 011 Mapuche 006 001 Mujer 6 2009 08308
Arauco Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 134 2009 08202
Purranque Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 35 2009 10303
Penco Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 5 2009 08107
Puerto Montt Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 133 2009 10101
La Granja Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 178 2009 13111
Cerrillos Profesional tecnica 011 Mapuche 006 001 Mujer 87 2009 13102
Quellón Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 17 2009 10208
Quilicura Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 279 2009 13125
Talca Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 171 2009 07101
Pelluhue Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Hombre 12 2009 07203
Teodoro Schmidt Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 59 2009 09117
Frutillar Profesional tecnica 011 No pertenece a ningún pueblo indígena 007 001 Mujer 46 2009 10105

1.3.1 Guardado de tablas

El siguiente código establece una conexión con nuestra base de datos en postgres donde estaremos guardando la tabla resultado del código previo. También se guardará la tabla de forma local en formato xlsx

# db <- 'trabajo-con-casen'  #provide the name of your db
# host_db <- 'post-to-r.postgres.database.azure.com' #i.e. # i.e. 'ec2-54-83-201-96.compute-1.amazonaws.com'
# db_port <- '5432'  # or any other port specified by the DBA
# db_user <- 'yomismo@post-to-r'
# db_password <- '123456Fg*'
# con <- dbConnect(RPostgres::Postgres(), dbname = db, host=host_db, port=db_port, user=db_user, password=db_password)
#
# library('RPostgreSQL')
# tn <- 'links'
# dbWriteTable(con,'tabla_discapacidad',receptaculo, row.names=FALSE)

write_xlsx(receptaculo,"tablas_grandes/entrega_4_nivel_educ_padre.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande

1.4 Gráficos

1.4.1 Gráfico I

p1 <- plot_ly(receptaculo , x = ~anio , color = ~nivel_educ_padre) %>% add_histogram() %>%
    layout(title = "Ha tenido enfermedad o accidente",
         xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

1.4.2 Gráfico II

p2 <- plot_ly(receptaculo , x = ~etnia , color = ~nivel_educ_padre)  %>% add_histogram()%>%
    layout(title = "Discapacidad por grupo etnico",
         xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors



2. Nivel educacional (madre)

¿Cuál fue el máximo nivel educacional que completó? Su Madre

funcion1 <- function(n){


  comunales<-switch(n, "codigos_comunales_2006.rds","codigos_comunales_2009.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds")
 xx<-switch(n, "2006","2009","2011","2013","2015","2017")
 # dataset_06 <<- NA


 if(xx==2006) {
  eliminated <- dataset_2006
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$T14B
d <- eliminated$E1 #alfabetismo
e <- eliminated$T4 #etnia
f <- eliminated$SEXO
anio <- 2006
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

 if(xx==2009) {
  eliminated <- dataset_2009
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$T16MT
d <- eliminated$E1 #alfabetismo
e <- eliminated$T5 #etnia
f <- eliminated$SEXO
anio <- 2009
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
 }

if(xx==2011) {
  eliminated <- dataset_2011
# a <- eliminated$ytotaj
b <- eliminated$comuna
c <- eliminated$r4mn
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2011
cross_tab =  xtabs(eliminated$expc_full ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_full ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2013) {
  eliminated <- dataset_2013
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$r4mn
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2013
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2015) {
  eliminated <- dataset_2015
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$r10a
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2015
cross_tab =  xtabs(eliminated$expc_todas ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_todas ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2017) {
  eliminated <- dataset_2017
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$r12a
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2017
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}



tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$Año <- anio

names(d)[1] <- "Comuna"
names(d)[2] <- "nivel_educ_madre"
names(d)[3] <- "Alfabetismo"
names(d)[4] <- "Etnia"
names(d)[5] <- "sexo"
codigos_comunales <- readRDS(file = comunales)
names(codigos_comunales)[1] <- "Código"
names(codigos_comunales)[2] <- "Comuna"
# codigos_comunales

df = merge( x = d, y = codigos_comunales, by = "Comuna", all.x = TRUE)

ingreso_rds <- paste("tablas_peque/nivel_educ_madre_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)

# print(head(df,10))

}

for (n in 1:6){
  funcion1(n)
}

2.1 Tratamientos

2.1.1 Union de tablas

Homologación de categorías de respuesta con código independiente para la variable de estudio de la ttcc y creación de la tabla general.

receptaculo <- data.frame()
for (n in 1 : 6){
    numero <- switch(n, "2006","2009","2011","2013","2015","2017")
    direc_tablas <- paste("tablas_peque/nivel_educ_madre_",numero,".rds", sep="")
    tablas <- readRDS(direc_tablas)

    receptaculo <<- rbind(receptaculo, tablas)

}

2.1.2 Diccionario

Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna a la que se le hará el diccionario, luego se guarda como xlsx para hacer el tratamiento

# receptaculo_unicos <- unique(receptaculo$nivel_educ_madre)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_nivel_educ_madre.xlsx")

2.2 Diccionarios

2.2.1 Diccionario alfabetismo

alfabetismo <- read_xlsx("diccionario/alfabetismo_unicos.xlsx")

kbl(alfabetismo) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Alfabetismo cat_alfa codigo_alfabetismo
No No 002
No, sólo lee No 002
No, ninguno No 002
No, sólo escribe No 002
No sabe /Sin dato NS/NR 003
NS/NR NS/NR 003
No sabe/responde NS/NR 003
001
Sí, lee y escribe 001

2.2.2 Diccionario etnia

categorias <- read_xlsx("diccionario/categorias_etnia.xlsx")

kbl(categorias) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Etnia categorias_etnicas codigo_etnia
Kawashkar o Alacalufes Alacalufes 001
Kawaskar Alacalufes 001
Kawésqar Alacalufes 001
Kawésqar (Alacalufes) Alacalufes 001
Atacameño Atacameño 002
Atacameño (Likán Antai) Atacameño 002
Atacameño (Likan-Antai) Atacameño 002
Atacameño (Likán-Antai) Atacameño 002
Aimara Aymara 003
Aymara Aymara 003
Collas Coya 004
Coya Coya 004
Diaguita Diaguita 005
Mapuche Mapuche 006
No pertenece a ningún pueblo indígena No pertenece a ningún pueblo indígena 007
No sabe/no responde No pertenece a ningún pueblo indígena 007
NS/NR No pertenece a ningún pueblo indígena 007
Sin dato No pertenece a ningún pueblo indígena 007
Rapa Nui Pascuense 008
Rapa Nui (Pascuense) Pascuense 008
Rapa-Nui o Pascuenses Pascuense 008
Quechua Quechua 009
Yagan Yagán 010
Yagán Yagán 010
Yagán (Yámana) Yagán 010
Yámana o Yagán Yagán 010

2.2.3 Diccionario madre

cat_disc <- read_xlsx("diccionario/diccionario_nivel_educ_madre.xlsx")

kbl(cat_disc) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
nivel_educ_madre cat_nivel_educ_madre
Centro de formación técnica (CFT) Profesional tecnica
Educ. media científico humanista Media
Educ. media técnica profesional Media
Educación Básica Básica
Educación básica (preparatoria) Básica
Educación media CH-TP (humanidades) Media
Educación Media Científico-Humanista Media
Educación Media Técnica Profesional Media tecnica
Educación Parvularia Educación Parvularia
Educación técnica de nivel superior Profesional tecnica
Educación universitaria Educación universitaria
Humanidades (S. Antiguo) Media
Humanidades (Sist. antiguo) Media
Humanidades (sistema antiguo) Media
Instituto Profesional Profesional tecnica
Ninguno Ninguno
No aplica NA
No estudió (incluye preparatoria o básica incompleta) NA
No sabe NA
No sabe no recuerda NA
No sabe/No recuerda NA
Nunca asistió Nunca asistió
Postgrado Postgrado
Preparatoria Básica
Primaria o Preparatoria (S. Antiguo) Básica
Primaria o Preparatoria (sistema antiguo) Básica
Profesional Profesional
Profesional (carrera de 4 ó más años) Profesional
Técnica, comercial, industrial o normalista Profesional tecnica
Técnica, Comercial, Industrial o Normalista (S. Antiguo) Profesional tecnica
Técnica, Comercial, Industrial o Normalista (sistema antiguo) Profesional tecnica
Técnica, Comercial, Industrial, Normalista (S. Antiguo) Profesional tecnica
Técnico Nivel Superior Profesional tecnica
Técnico Nivel Superior (carrera de 1 a 3 año) Profesional tecnica
Técnico Nivel Superior (carrera de 1 a 3 años) Profesional tecnica
Universitario Profesional

2.3 Unificación de categorías

cod_cat <- unique(cat_disc$cat_nivel_educ_madre)
cod_cat<- as.data.frame(cod_cat)

rango <- seq(1:nrow(cod_cat))
cadena<- paste("000",seq(1:nrow(cod_cat)), sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(4-2),5)

cod_cat$codigo_nivel_educ_madre <- cadena
names(cod_cat)[1] <- "cat_nivel_educ_madre"

cat_disc = merge( x = cat_disc, y = cod_cat, by = "cat_nivel_educ_madre", all.x = TRUE)
cat_disc <- cat_disc[,c(2,1,3)]



nuevas_cat = merge( x = receptaculo, y = alfabetismo, by = "Alfabetismo", all.x = TRUE)
alfa_corr <- nuevas_cat[,c(-1)]


categoriasbuenas = merge( x = alfa_corr, y = categorias, by = "Etnia", all.x = TRUE)
etnia_corr <- categoriasbuenas[,c(-1)]

categoriasbuenas = merge( x = etnia_corr, y = cat_disc, by = "nivel_educ_madre", all.x = TRUE)
discapacidad_corr <- categoriasbuenas[,c(-1)]

receptaculo<-discapacidad_corr[,c(1,10,11,8,9,6,7,2,3,4,5)]

names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "nivel_educ_madre"
names(receptaculo)[4] <- "etnia"
names(receptaculo)[6] <- "alfabetismo"
names(receptaculo)[8] <- "sexo"
names(receptaculo)[9] <- "frec"
names(receptaculo)[10] <- "anio"
names(receptaculo)[11] <- "codigo_comuna"

receptaculo_tab <- receptaculo[1:30,]
kbl(receptaculo_tab) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "500px")
comuna nivel_educ_madre codigo_nivel_educ_madre etnia codigo_etnia alfabetismo codigo_alfabetismo sexo frec anio codigo_comuna
Arica Profesional tecnica 001 Aymara 003 001 Hombre 57 2009 15101
La Reina Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 745 2009 13113
Cabo de Hornos Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 8 2009 12201
Curaco de Vélez Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 19 2009 10204
Osorno Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 119 2009 10301
Coronel Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 127 2009 08102
Conchalí Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 98 2009 13104
Hualpén Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 144 2009 08112
Chillán Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 219 2009 16101
Olmué Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 20 2009 05803
Viña del Mar Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 455 2009 05109
Lampa Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 137 2009 13302
San Bernardo Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 243 2009 13401
Talcahuano Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 466 2009 08110
Hualpén Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 132 2009 08112
Taltal Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 13 2009 02104
La Pintana Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 112 2009 13112
Villarrica Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 251 2009 09120
Pirque Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 26 2009 13202
San Pedro de la Paz Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 221 2009 08108
Villarrica Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Hombre 212 2009 09120
Teodoro Schmidt Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 59 2009 09117
Pencahue Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 12 2009 07107
Pirque Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 26 2009 13202
Panguipulli Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 102 2009 14108
Illapel Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 50 2009 04201
Ollagüe Profesional tecnica 001 Mapuche 006 001 Hombre 1 2009 02202
Casablanca Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 648 2009 05102
Concón Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 150 2009 05103
Curepto Profesional tecnica 001 No pertenece a ningún pueblo indígena 007 001 Mujer 28 2009 07103

2.3.1 Guardado de tablas

El siguiente código establece una conexión con nuestra base de datos en postgres donde estaremos guardando la tabla resultado del código previo. También se guardará la tabla de forma local en formato xlsx

# db <- 'trabajo-con-casen'  #provide the name of your db
# host_db <- 'post-to-r.postgres.database.azure.com' #i.e. # i.e. 'ec2-54-83-201-96.compute-1.amazonaws.com'
# db_port <- '5432'  # or any other port specified by the DBA
# db_user <- 'yomismo@post-to-r'
# db_password <- '123456Fg*'
# con <- dbConnect(RPostgres::Postgres(), dbname = db, host=host_db, port=db_port, user=db_user, password=db_password)
#
# library('RPostgreSQL')
# tn <- 'links'
# dbWriteTable(con,'tabla_discapacidad',receptaculo, row.names=FALSE)

write_xlsx(receptaculo,"tablas_grandes/entrega_4_nivel_educ_madre.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande

2.4 Gráficos

2.4.1 Gráfico I

p1 <- plot_ly(receptaculo , x = ~anio , color = ~nivel_educ_madre) %>% add_histogram() %>%
    layout(title = "Ha tenido enfermedad o accidente",
         xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

2.4.2 Gráfico II

p2 <- plot_ly(receptaculo , x = ~etnia , color = ~nivel_educ_madre)  %>% add_histogram()%>%
    layout(title = "Discapacidad por grupo etnico",
         xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors



3. Quintil Ingreso Autónomo Nacional

Quintil de Ingreso Autónomo Per cápita Nacional (se excluye el s.d.p.a)

funcion1 <- function(n){


  comunales<-switch(n, "codigos_comunales_2006.rds","codigos_comunales_2009.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds")
 xx<-switch(n, "2006","2009","2011","2013","2015","2017")
 # dataset_06 <<- NA


 if(xx==2006) {
  eliminated <- dataset_2006
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$QAUT
d <- eliminated$E1 #alfabetismo
e <- eliminated$T4 #etnia
f <- eliminated$SEXO
anio <- 2006
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

 if(xx==2009) {
  eliminated <- dataset_2009
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$QAUT
d <- eliminated$E1 #alfabetismo
e <- eliminated$T5 #etnia
f <- eliminated$SEXO
anio <- 2009
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
 }

if(xx==2011) {
  eliminated <- dataset_2011
# a <- eliminated$ytotaj
b <- eliminated$comuna
c <- eliminated$qaut
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2011
cross_tab =  xtabs(eliminated$expc_full ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_full ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2013) {
  eliminated <- dataset_2013
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$QAUT_MN
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2013
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2015) {
  eliminated <- dataset_2015
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$qaut
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2015
cross_tab =  xtabs(eliminated$expc_todas ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_todas ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2017) {
  eliminated <- dataset_2017
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$qaut
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2017
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}



tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$Año <- anio

names(d)[1] <- "Comuna"
names(d)[2] <- "quintil"
names(d)[3] <- "Alfabetismo"
names(d)[4] <- "Etnia"
names(d)[5] <- "sexo"
codigos_comunales <- readRDS(file = comunales)
names(codigos_comunales)[1] <- "Código"
names(codigos_comunales)[2] <- "Comuna"
# codigos_comunales

df = merge( x = d, y = codigos_comunales, by = "Comuna", all.x = TRUE)

ingreso_rds <- paste("tablas_peque/quintil_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)

# print(head(df,10))

}

for (n in 1:6){
  funcion1(n)
}

3.1 Tratamientos

1.1.1 Union de tablas

Homologación de categorías de respuesta con código independiente para la variable de estudio de la ttcc y creación de la tabla general.

receptaculo <- data.frame()
for (n in 1 : 6){
    numero <- switch(n, "2006","2009","2011","2013","2015","2017")
    direc_tablas <- paste("tablas_peque/quintil_",numero,".rds", sep="")
    tablas <- readRDS(direc_tablas)

    receptaculo <<- rbind(receptaculo, tablas)

}

3.1.2 Diccionario

Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna a la que se le hará el diccionario, luego se guarda como xlsx para hacer el tratamiento

# receptaculo_unicos <- unique(receptaculo$quintil)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_quintil.xlsx")

3.2 Diccionarios

3.2.1 Diccionario alfabetismo

alfabetismo <- read_xlsx("diccionario/alfabetismo_unicos.xlsx")

kbl(alfabetismo) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Alfabetismo cat_alfa codigo_alfabetismo
No No 002
No, sólo lee No 002
No, ninguno No 002
No, sólo escribe No 002
No sabe /Sin dato NS/NR 003
NS/NR NS/NR 003
No sabe/responde NS/NR 003
001
Sí, lee y escribe 001

3.2.2 Diccionario etnia

categorias <- read_xlsx("diccionario/categorias_etnia.xlsx")

kbl(categorias) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Etnia categorias_etnicas codigo_etnia
Kawashkar o Alacalufes Alacalufes 001
Kawaskar Alacalufes 001
Kawésqar Alacalufes 001
Kawésqar (Alacalufes) Alacalufes 001
Atacameño Atacameño 002
Atacameño (Likán Antai) Atacameño 002
Atacameño (Likan-Antai) Atacameño 002
Atacameño (Likán-Antai) Atacameño 002
Aimara Aymara 003
Aymara Aymara 003
Collas Coya 004
Coya Coya 004
Diaguita Diaguita 005
Mapuche Mapuche 006
No pertenece a ningún pueblo indígena No pertenece a ningún pueblo indígena 007
No sabe/no responde No pertenece a ningún pueblo indígena 007
NS/NR No pertenece a ningún pueblo indígena 007
Sin dato No pertenece a ningún pueblo indígena 007
Rapa Nui Pascuense 008
Rapa Nui (Pascuense) Pascuense 008
Rapa-Nui o Pascuenses Pascuense 008
Quechua Quechua 009
Yagan Yagán 010
Yagán Yagán 010
Yagán (Yámana) Yagán 010
Yámana o Yagán Yagán 010

3.2.3 Diccionario quintil

cat_disc <- read_xlsx("diccionario/diccionario_quintil.xlsx")

kbl(cat_disc) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
quintil cat_quintil
II II
V V
IV IV
I I
III III
0 0

3.3 Unificación de categorías

cod_cat <- unique(cat_disc$cat_quintil)
cod_cat<- as.data.frame(cod_cat)

rango <- seq(1:nrow(cod_cat))
cadena<- paste("000",seq(1:nrow(cod_cat)), sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(4-2),5)

cod_cat$codigo_quintil <- cadena
names(cod_cat)[1] <- "cat_quintil"

cat_disc = merge( x = cat_disc, y = cod_cat, by = "cat_quintil", all.x = TRUE)
cat_disc <- cat_disc[,c(2,1,3)]



nuevas_cat = merge( x = receptaculo, y = alfabetismo, by = "Alfabetismo", all.x = TRUE)
alfa_corr <- nuevas_cat[,c(-1)]


categoriasbuenas = merge( x = alfa_corr, y = categorias, by = "Etnia", all.x = TRUE)
etnia_corr <- categoriasbuenas[,c(-1)]

categoriasbuenas = merge( x = etnia_corr, y = cat_disc, by = "quintil", all.x = TRUE)
discapacidad_corr <- categoriasbuenas[,c(-1)]

receptaculo<-discapacidad_corr[,c(1,10,11,8,9,6,7,2,3,4,5)]

names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "quintil"
names(receptaculo)[4] <- "etnia"
names(receptaculo)[6] <- "alfabetismo"
names(receptaculo)[8] <- "sexo"
names(receptaculo)[9] <- "frec"
names(receptaculo)[10] <- "anio"
names(receptaculo)[11] <- "codigo_comuna"

receptaculo_tab <- receptaculo[1:30,]
kbl(receptaculo_tab) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "500px")
comuna quintil codigo_quintil etnia codigo_etnia alfabetismo codigo_alfabetismo sexo frec anio codigo_comuna
Primavera 0 006 Mapuche 006 001 Mujer 42 2006 12302
Primavera 0 006 Aymara 003 001 Mujer 3 2006 12302
Primavera 0 006 Mapuche 006 001 Hombre 60 2006 12302
Primavera 0 006 No pertenece a ningún pueblo indígena 007 001 Mujer 168 2006 12302
Primavera 0 006 No pertenece a ningún pueblo indígena 007 001 Hombre 189 2006 12302
Primavera 0 006 No pertenece a ningún pueblo indígena 007 No 002 Hombre 3 2006 12302
Copiapó I 004 Aymara 003 001 Mujer 80 2015 03101
Camiña I 004 Aymara 003 001 Mujer 75 2017 01402
Hualqui I 004 Mapuche 006 001 Mujer 477 2017 08105
Maullín I 004 Mapuche 006 001 Mujer 305 2006 10108
La Granja I 004 Mapuche 006 No 002 Mujer 140 2009 13111
Quilpué I 004 No pertenece a ningún pueblo indígena 007 No 002 Hombre 175 2013 05801
Curaco de Vélez I 004 No pertenece a ningún pueblo indígena 007 001 Mujer 723 2013 10204
Los Sauces I 004 Mapuche 006 No 002 Hombre 36 2013 09206
Talca I 004 Aymara 003 001 Mujer 99 2015 07101
Teodoro Schmidt I 004 No pertenece a ningún pueblo indígena 007 001 Mujer 2494 2015 09117
Constitución I 004 No pertenece a ningún pueblo indígena 007 No 002 Hombre 137 2015 07102
Panguipulli I 004 Mapuche 006 No 002 Mujer 68 2013 14108
Rinconada I 004 No pertenece a ningún pueblo indígena 007 No 002 Hombre 153 2015 05303
Padre Hurtado I 004 No pertenece a ningún pueblo indígena 007 No 002 Mujer 92 2011 13604
San Ramón I 004 No pertenece a ningún pueblo indígena 007 No 002 Mujer 137 2017 13131
Alto del Carmen I 004 Diaguita 005 001 Mujer 146 2011 03302
Huara I 004 Aymara 003 No 002 Hombre 26 2015 01404
Rancagua I 004 No pertenece a ningún pueblo indígena 007 No 002 Hombre 90 2017 06101
Placilla I 004 No pertenece a ningún pueblo indígena 007 No 002 Mujer 55 2009 06308
Concepción I 004 No pertenece a ningún pueblo indígena 007 No 002 Hombre 24 2011 08101
Lo Espejo I 004 Mapuche 006 001 Hombre 642 2011 13116
Temuco I 004 No pertenece a ningún pueblo indígena 007 No 002 Hombre 793 2015 09101
Queilén I 004 Mapuche 006 No 002 Mujer 16 2009 10207
Curarrehue I 004 Mapuche 006 001 Mujer 702 2006 09104

3.3.1 Guardado de tablas

El siguiente código establece una conexión con nuestra base de datos en postgres donde estaremos guardando la tabla resultado del código previo. También se guardará la tabla de forma local en formato xlsx

# db <- 'trabajo-con-casen'  #provide the name of your db
# host_db <- 'post-to-r.postgres.database.azure.com' #i.e. # i.e. 'ec2-54-83-201-96.compute-1.amazonaws.com'
# db_port <- '5432'  # or any other port specified by the DBA
# db_user <- 'yomismo@post-to-r'
# db_password <- '123456Fg*'
# con <- dbConnect(RPostgres::Postgres(), dbname = db, host=host_db, port=db_port, user=db_user, password=db_password)
#
# library('RPostgreSQL')
# tn <- 'links'
# dbWriteTable(con,'tabla_discapacidad',receptaculo, row.names=FALSE)

write_xlsx(receptaculo,"tablas_grandes/entrega_4_quintil.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande

3.4 Gráficos

3.4.1 Gráfico I

p1 <- plot_ly(receptaculo , x = ~anio , color = ~quintil) %>% add_histogram() %>%
    layout(title = "Ha tenido enfermedad o accidente",
         xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1

3.4.2 Gráfico II

p2 <- plot_ly(receptaculo , x = ~etnia , color = ~quintil)  %>% add_histogram()%>%
    layout(title = "Discapacidad por grupo etnico",
         xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2



4. Decil Ingreso Autónomo Nacional

Decil de Ingreso Autónomo Per cápita Nacional (se excluye el s.d.p.a)

funcion1 <- function(n){


  comunales<-switch(n, "codigos_comunales_2006.rds","codigos_comunales_2009.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds","codigos_comunales_2011-2017.rds")
 xx<-switch(n, "2006","2009","2011","2013","2015","2017")
 # dataset_06 <<- NA


 if(xx==2006) {
  eliminated <- dataset_2006
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$DAU
d <- eliminated$E1 #alfabetismo
e <- eliminated$T4 #etnia
f <- eliminated$SEXO
anio <- 2006
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

 if(xx==2009) {
  eliminated <- dataset_2009
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$DAU
d <- eliminated$E1 #alfabetismo
e <- eliminated$T5 #etnia
f <- eliminated$SEXO
anio <- 2009
cross_tab =  xtabs(eliminated$EXPC ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
 }

if(xx==2011) {
  eliminated <- dataset_2011
# a <- eliminated$ytotaj
b <- eliminated$comuna
c <- eliminated$daut
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2011
cross_tab =  xtabs(eliminated$expc_full ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_full ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2013) {
  eliminated <- dataset_2013
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$DAU_MN
d <- eliminated$e1 #alfabetismo
e <- eliminated$r6 #etnia
f <- eliminated$sexo
anio <- 2013
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2015) {
  eliminated <- dataset_2015
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$dau
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2015
cross_tab =  xtabs(eliminated$expc_todas ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc_todas ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}

if(xx==2017) {
  eliminated <- dataset_2017
# a <- eliminated$ytotcor
b <- eliminated$comuna
c <- eliminated$dau
d <- eliminated$e1 #alfabetismo
e <- eliminated$r3 #etnia
f <- eliminated$sexo
anio <- 2017
cross_tab =  xtabs(eliminated$expc ~  +  unlist(b) + unlist(c)  + unlist(d)  + unlist(e)+ unlist(f) ,aggregate(eliminated$expc ~  +  unlist(b) + unlist(c) + unlist(d) + unlist(e)+ unlist(f),eliminated,mean))
}



tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$Año <- anio

names(d)[1] <- "Comuna"
names(d)[2] <- "decil"
names(d)[3] <- "Alfabetismo"
names(d)[4] <- "Etnia"
names(d)[5] <- "sexo"
codigos_comunales <- readRDS(file = comunales)
names(codigos_comunales)[1] <- "Código"
names(codigos_comunales)[2] <- "Comuna"
# codigos_comunales

df = merge( x = d, y = codigos_comunales, by = "Comuna", all.x = TRUE)

ingreso_rds <- paste("tablas_peque/decil_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)

# print(head(df,10))

}

for (n in 1:6){
  funcion1(n)
}

4.1 Tratamientos

4.1.1 Union de tablas

Homologación de categorías de respuesta con código independiente para la variable de estudio de la ttcc y creación de la tabla general.

receptaculo <- data.frame()
for (n in 1 : 6){
    numero <- switch(n, "2006","2009","2011","2013","2015","2017")
    direc_tablas <- paste("tablas_peque/decil_",numero,".rds", sep="")
    tablas <- readRDS(direc_tablas)

    receptaculo <<- rbind(receptaculo, tablas)

}

4.1.2 Diccionario

Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna a la que se le hará el diccionario, luego se guarda como xlsx para hacer el tratamiento

# receptaculo_unicos <- unique(receptaculo$decil)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_decil_.xlsx")

4.2 Diccionarios

4.2.1 Diccionario alfabetismo

alfabetismo <- read_xlsx("diccionario/alfabetismo_unicos.xlsx")

kbl(alfabetismo) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Alfabetismo cat_alfa codigo_alfabetismo
No No 002
No, sólo lee No 002
No, ninguno No 002
No, sólo escribe No 002
No sabe /Sin dato NS/NR 003
NS/NR NS/NR 003
No sabe/responde NS/NR 003
001
Sí, lee y escribe 001

4.2.2 Diccionario etnia

categorias <- read_xlsx("diccionario/categorias_etnia.xlsx")

kbl(categorias) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
Etnia categorias_etnicas codigo_etnia
Kawashkar o Alacalufes Alacalufes 001
Kawaskar Alacalufes 001
Kawésqar Alacalufes 001
Kawésqar (Alacalufes) Alacalufes 001
Atacameño Atacameño 002
Atacameño (Likán Antai) Atacameño 002
Atacameño (Likan-Antai) Atacameño 002
Atacameño (Likán-Antai) Atacameño 002
Aimara Aymara 003
Aymara Aymara 003
Collas Coya 004
Coya Coya 004
Diaguita Diaguita 005
Mapuche Mapuche 006
No pertenece a ningún pueblo indígena No pertenece a ningún pueblo indígena 007
No sabe/no responde No pertenece a ningún pueblo indígena 007
NS/NR No pertenece a ningún pueblo indígena 007
Sin dato No pertenece a ningún pueblo indígena 007
Rapa Nui Pascuense 008
Rapa Nui (Pascuense) Pascuense 008
Rapa-Nui o Pascuenses Pascuense 008
Quechua Quechua 009
Yagan Yagán 010
Yagán Yagán 010
Yagán (Yámana) Yagán 010
Yámana o Yagán Yagán 010

4.2.3 Diccionario decil

cat_disc <- read_xlsx("diccionario/diccionario_decil_.xlsx")

kbl(cat_disc) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "300px")
decil cat_decil
VIII VIII
I I
V V
II II
VI VI
IX IX
IV IV
VII VII
X X
III III
0 0

4.3 Unificación de categorías

cod_cat <- unique(cat_disc$cat_decil)
cod_cat<- as.data.frame(cod_cat)

rango <- seq(1:nrow(cod_cat))
cadena<- paste("000",seq(1:nrow(cod_cat)), sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(4-2),5)

cod_cat$codigo_decil <- cadena
names(cod_cat)[1] <- "cat_decil"

cat_disc = merge( x = cat_disc, y = cod_cat, by = "cat_decil", all.x = TRUE)
cat_disc <- cat_disc[,c(2,1,3)]



nuevas_cat = merge( x = receptaculo, y = alfabetismo, by = "Alfabetismo", all.x = TRUE)
alfa_corr <- nuevas_cat[,c(-1)]


categoriasbuenas = merge( x = alfa_corr, y = categorias, by = "Etnia", all.x = TRUE)
etnia_corr <- categoriasbuenas[,c(-1)]

categoriasbuenas = merge( x = etnia_corr, y = cat_disc, by = "decil", all.x = TRUE)
discapacidad_corr <- categoriasbuenas[,c(-1)]

receptaculo<-discapacidad_corr[,c(1,10,11,8,9,6,7,2,3,4,5)]

names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "decil"
names(receptaculo)[4] <- "etnia"
names(receptaculo)[6] <- "alfabetismo"
names(receptaculo)[8] <- "sexo"
names(receptaculo)[9] <- "frec"
names(receptaculo)[10] <- "anio"
names(receptaculo)[11] <- "codigo_comuna"

receptaculo_tab <- receptaculo[1:30,]
kbl(receptaculo_tab) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "500px")
comuna decil codigo_decil etnia codigo_etnia alfabetismo codigo_alfabetismo sexo frec anio codigo_comuna
Primavera 0 011 Mapuche 006 001 Hombre 60 2006 12302
Primavera 0 011 No pertenece a ningún pueblo indígena 007 No 002 Hombre 3 2006 12302
Primavera 0 011 No pertenece a ningún pueblo indígena 007 001 Mujer 168 2006 12302
Primavera 0 011 Mapuche 006 001 Mujer 42 2006 12302
Primavera 0 011 No pertenece a ningún pueblo indígena 007 001 Hombre 189 2006 12302
Primavera 0 011 Aymara 003 001 Mujer 3 2006 12302
Huechuraba I 002 No pertenece a ningún pueblo indígena 007 No 002 Mujer 74 2009 13107
Gorbea I 002 No pertenece a ningún pueblo indígena 007 001 Mujer 415 2017 09107
Coinco I 002 No pertenece a ningún pueblo indígena 007 No 002 Hombre 26 2006 06103
Sagrada Familia I 002 No pertenece a ningún pueblo indígena 007 No 002 Hombre 254 2013 07307
Teodoro Schmidt I 002 No pertenece a ningún pueblo indígena 007 001 Hombre 689 2009 09117
Collipulli I 002 Mapuche 006 001 Hombre 243 2015 09202
Curicó I 002 No pertenece a ningún pueblo indígena 007 No 002 Hombre 70 2017 07301
Pencahue I 002 No pertenece a ningún pueblo indígena 007 No 002 Mujer 37 2011 07107
Rengo I 002 No pertenece a ningún pueblo indígena 007 No 002 Hombre 103 2011 06115
Peñalolén I 002 No pertenece a ningún pueblo indígena 007 001 Mujer 236 2013 13122
Nogales I 002 Diaguita 005 001 Hombre 40 2015 05506
Camiña I 002 Aymara 003 001 Mujer 47 2009 01402
Ancud I 002 No pertenece a ningún pueblo indígena 007 001 Hombre 558 2006 10202
Canela I 002 Diaguita 005 001 Hombre 26 2013 04202
Perquenco I 002 Mapuche 006 001 Hombre 139 2011 09113
Pemuco I 002 No pertenece a ningún pueblo indígena 007 001 Hombre 417 2013 16105
Melipilla I 002 No pertenece a ningún pueblo indígena 007 No 002 Hombre 162 2011 13501
Paillaco I 002 No pertenece a ningún pueblo indígena 007 No 002 Mujer 7 2011 14107
Purén I 002 Mapuche 006 001 Hombre 180 2009 09208
Penco I 002 No pertenece a ningún pueblo indígena 007 No 002 Mujer 81 2013 08107
Frutillar I 002 No pertenece a ningún pueblo indígena 007 No 002 Mujer 81 2013 10105
Maullín I 002 No pertenece a ningún pueblo indígena 007 No 002 Hombre 25 2011 10108
Alto del Carmen I 002 Diaguita 005 001 Mujer 34 2009 03302
Camarones I 002 Mapuche 006 001 Mujer 14 2013 15102

4.3.1 Guardado de tablas

El siguiente código establece una conexión con nuestra base de datos en postgres donde estaremos guardando la tabla resultado del código previo. También se guardará la tabla de forma local en formato xlsx

# db <- 'trabajo-con-casen'  #provide the name of your db
# host_db <- 'post-to-r.postgres.database.azure.com' #i.e. # i.e. 'ec2-54-83-201-96.compute-1.amazonaws.com'
# db_port <- '5432'  # or any other port specified by the DBA
# db_user <- 'yomismo@post-to-r'
# db_password <- '123456Fg*'
# con <- dbConnect(RPostgres::Postgres(), dbname = db, host=host_db, port=db_port, user=db_user, password=db_password)
#
# library('RPostgreSQL')
# tn <- 'links'
# dbWriteTable(con,'tabla_discapacidad',receptaculo, row.names=FALSE)

write_xlsx(receptaculo,"tablas_grandes/entrega_4_decil.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande

1.4 Gráficos

1.4.1 Gráfico I

p1 <- plot_ly(receptaculo , x = ~anio , color = ~decil) %>% add_histogram() %>%
    layout(title = "Ha tenido enfermedad o accidente",
         xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

1.4.2 Gráfico II

p2 <- plot_ly(receptaculo , x = ~etnia , color = ~decil)  %>% add_histogram()%>%
    layout(title = "Discapacidad por grupo etnico",
         xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

```