Abstract
En este informe revisamos la situación del empleo en Chile entre el 2006 y 2017. Para ello revisaremos 6 preguntas a lo largo de las Casen. Tres indagan sobre la actividad laboral de las personas, si trabajaron o tuvieron actividad durante la semana pasada y si no la tuvieron, si tienen empleo. Para los inactivos (personas que pudiendo trabajar no buscan empleo) se les pregunta si han trabajado alguna vez y a los desocupados se les hacen 2 preguntas relacionadas a sus actitudes frente al empleo:. si han buscado trabajo remunerado últimamente y si están disponibles para hacerlo.Es la pregunta básica que respondemos en esta serie de entregas. Queremos determinar cuántas personas hay en el cruce de tres variables esenciales: sexo, alfabetismo y etnia, para todas las comunas y para los 6 años de las Casen en referencia a una pregunta de investigación especifica. Veamos el siguiente ejemplo.
La tabla que sigue muestra el resultado de filtro sobre la Casen del 2006 en las respuestas categoricas “Hombre”, “No”, “Mapuche”, para Temuco.
Registro | Sexo | Comuna | Alfabetismo | Etnia | Año |
---|---|---|---|---|---|
Persona 1 | Hombre | Temuco | No | Mapuche | 2006 |
Persona 2 | Hombre | Temuco | No | Mapuche | 2006 |
Persona 3 | Hombre | Temuco | No | Mapuche | 2006 |
Vemos que el resultado son 3 registros, tres personas.
Estamos trabajando a nivel de muestras. La Casen nos entrega una herramienta para poder expandir el resultado a nivel poblacional: Es el factor de expansión.
El factor de expansión,
El fe es un valor asociado a cada registro, en una columna llamémosla “expc”, representativo de la población a la que pertenece la muestra. La respuesta asociada a un registro puede equivaler a la respuesta de 65 personas y la de otro, por ejemplo a 81. Con el factor de expansión se responde a la proporción: si 35 personas pertenecen a nuestra categorización en la muestra, a cuántas personas equivaldrá en la población total. Si en nuestro ejemplo anterior la persona 1 hubiese tenido un factor de expansión igual a 3, la persona 2 uno de 7 y la persona 3 uno de 5, el resultado esperado por nosotros debiese ser igual a 15. Y lo es. A continuación lo demostraremos.
Primero aplicaremos nuestro código y verificaremos que las frecuencias obtenidas para los primeros dos registros correspondan al valor calculado de forma independiente con la metodología expuesta previamente, la de la simple suma de los factores de expansión:
Tabla de contingencia para la pregunta ¿La semana pasada trabajo al menos una hora? para el año 2006 en la comuna de Temuco
dataset_2006 <- readRDS(file = "casen_2006_c.rds")
dataset_2006 <- dataset_2006[,c("COMUNA","O1","O2","O3","O8","O4","O5","T4","E1","SEXO","EXPC")]
eliminated <- dataset_2006
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
c <- eliminated$O1
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))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$Año <- anio
names(d)[1] <- "Comuna"
names(d)[2] <- "v1"
names(d)[3] <- "Alfabetismo"
names(d)[4] <- "Etnia"
names(d)[5] <- "sexo"
codigos_comunales <- readRDS(file = "codigos_comunales_2006.rds")
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)
df_tab <- df[1:30,]
kbl(df_tab) %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
kable_paper() %>%
scroll_box(width = "100%", height = "500px")
Comuna | v1 | Alfabetismo | Etnia | sexo | Freq | Año | Código |
---|---|---|---|---|---|---|---|
Aisén | Sí | Sí | Kawaskar | Mujer | 35 | 2006 | 11201 |
Aisén | Sí | Sí | Mapuche | Hombre | 626 | 2006 | 11201 |
Aisén | Sí | Sí | No pertenece a ningún pueblo indígena | Mujer | 2806 | 2006 | 11201 |
Aisén | Sí | Sí | No pertenece a ningún pueblo indígena | Hombre | 5481 | 2006 | 11201 |
Aisén | No | No | No pertenece a ningún pueblo indígena | Hombre | 145 | 2006 | 11201 |
Aisén | Sí | Sí | Mapuche | Mujer | 403 | 2006 | 11201 |
Aisén | No | Sí | Kawaskar | Hombre | 35 | 2006 | 11201 |
Aisén | No | No | Mapuche | Hombre | 14 | 2006 | 11201 |
Aisén | No | Sí | No pertenece a ningún pueblo indígena | Hombre | 2042 | 2006 | 11201 |
Aisén | No | Sí | Mapuche | Mujer | 655 | 2006 | 11201 |
Aisén | No | Sí | Mapuche | Hombre | 189 | 2006 | 11201 |
Aisén | No | No | No pertenece a ningún pueblo indígena | Mujer | 193 | 2006 | 11201 |
Aisén | Sí | No | No pertenece a ningún pueblo indígena | Hombre | 81 | 2006 | 11201 |
Aisén | No | Sí | No pertenece a ningún pueblo indígena | Mujer | 4861 | 2006 | 11201 |
Aisén | No | No | Mapuche | Mujer | 44 | 2006 | 11201 |
Algarrobo | No | Sí | No pertenece a ningún pueblo indígena | Hombre | 1141 | 2006 | 05602 |
Algarrobo | No | Sí | Mapuche | Mujer | 65 | 2006 | 05602 |
Algarrobo | No | No | Mapuche | Mujer | 4 | 2006 | 05602 |
Algarrobo | Sí | Sí | Atacameño | Hombre | 30 | 2006 | 05602 |
Algarrobo | No | No | No pertenece a ningún pueblo indígena | Hombre | 102 | 2006 | 05602 |
Algarrobo | No | No | No pertenece a ningún pueblo indígena | Mujer | 244 | 2006 | 05602 |
Algarrobo | Sí | No | No pertenece a ningún pueblo indígena | Hombre | 109 | 2006 | 05602 |
Algarrobo | Sí | Sí | Mapuche | Mujer | 32 | 2006 | 05602 |
Algarrobo | Sí | Sí | No pertenece a ningún pueblo indígena | Hombre | 2538 | 2006 | 05602 |
Algarrobo | Sí | No | No pertenece a ningún pueblo indígena | Mujer | 29 | 2006 | 05602 |
Algarrobo | No | Sí | No pertenece a ningún pueblo indígena | Mujer | 2443 | 2006 | 05602 |
Algarrobo | Sí | Sí | No pertenece a ningún pueblo indígena | Mujer | 1527 | 2006 | 05602 |
Algarrobo | Sí | Sí | Mapuche | Hombre | 41 | 2006 | 05602 |
Alhué | No | Sí | Mapuche | Mujer | 31 | 2006 | 13502 |
Alhué | No | No | No pertenece a ningún pueblo indígena | Mujer | 174 | 2006 | 13502 |
El primer registro nos entrega una frecuencia de 35 y el segundo una de 626. Verificaremos que las cantidades de personas en éstas categorías sean las poblacionales.
filtro <- filter(dataset_2006, dataset_2006$COMUNA =="Aisén")
filtro <- filter(filtro, filtro$O1 =="Sí")
filtro <- filter(filtro, filtro$E1 =="Sí")
filtro <- filter(filtro, filtro$T4 =="Kawaskar")
filtro <- filter(filtro, filtro$SEXO =="Mujer")
filtro <- filtro[,c(1,2,8,9,10,11)]
kbl(filtro) %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
kable_paper() %>%
scroll_box(width = "100%", height = "100px")
COMUNA | O1 | T4 | E1 | SEXO | EXPC |
---|---|---|---|---|---|
Aisén | Sí | Kawaskar | Sí | Mujer | 35 |
Tenemos un solo registro y su EXPC es igual a 35, el mismo valor que obtuvimos en nuestra tabla de contingencia.
filtro <- filter(dataset_2006, dataset_2006$COMUNA =="Aisén")
filtro <- filter(filtro, filtro$O1 =="Sí")
filtro <- filter(filtro, filtro$E1 =="Sí")
filtro <- filter(filtro, filtro$T4 =="Mapuche")
filtro <- filter(filtro, filtro$SEXO =="Hombre")
filtro <- filtro[,c(1,2,8,9,10,11)]
kbl(filtro) %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
kable_paper() %>%
scroll_box(width = "100%", height = "500px")
COMUNA | O1 | T4 | E1 | SEXO | EXPC |
---|---|---|---|---|---|
Aisén | Sí | Mapuche | Sí | Hombre | 31 |
Aisén | Sí | Mapuche | Sí | Hombre | 34 |
Aisén | Sí | Mapuche | Sí | Hombre | 31 |
Aisén | Sí | Mapuche | Sí | Hombre | 37 |
Aisén | Sí | Mapuche | Sí | Hombre | 66 |
Aisén | Sí | Mapuche | Sí | Hombre | 42 |
Aisén | Sí | Mapuche | Sí | Hombre | 35 |
Aisén | Sí | Mapuche | Sí | Hombre | 35 |
Aisén | Sí | Mapuche | Sí | Hombre | 35 |
Aisén | Sí | Mapuche | Sí | Hombre | 35 |
Aisén | Sí | Mapuche | Sí | Hombre | 35 |
Aisén | Sí | Mapuche | Sí | Hombre | 34 |
Aisén | Sí | Mapuche | Sí | Hombre | 42 |
Aisén | Sí | Mapuche | Sí | Hombre | 14 |
Aisén | Sí | Mapuche | Sí | Hombre | 14 |
Aisén | Sí | Mapuche | Sí | Hombre | 14 |
Aisén | Sí | Mapuche | Sí | Hombre | 14 |
Aisén | Sí | Mapuche | Sí | Hombre | 9 |
Aisén | Sí | Mapuche | Sí | Hombre | 9 |
Aisén | Sí | Mapuche | Sí | Hombre | 9 |
Aisén | Sí | Mapuche | Sí | Hombre | 9 |
Aisén | Sí | Mapuche | Sí | Hombre | 9 |
Aisén | Sí | Mapuche | Sí | Hombre | 9 |
Aisén | Sí | Mapuche | Sí | Hombre | 8 |
Aisén | Sí | Mapuche | Sí | Hombre | 8 |
Aisén | Sí | Mapuche | Sí | Hombre | 8 |
Si sumamos los factores de expansión de todos los registros vamos a obtener el valor de la frecuencia de nuestro segundo registro de la tabla de contingencias.
fac_ex <- filtro$EXPC
fac_ex <- as.data.frame(fac_ex)
total_factor_ex <- colSums(fac_ex)
total_factor_ex
## fac_ex
## 626
eliminated <- dataset_2006
eliminated <- eliminated[!is.na(eliminated$O1),]
# a <- eliminated$ytotaj
b <- eliminated$COMUNA
# c <- eliminated$O1
d <- eliminated$E1 #alfabetismo
e <- eliminated$T4 #etnia
f <- eliminated$SEXO
anio <- 2006
cross_tab = xtabs(eliminated$EXPC ~ + unlist(b) + unlist(d) + unlist(e)+ unlist(f) ,aggregate(eliminated$EXPC ~ + unlist(b) + 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] <- "Alfabetismo"
names(d)[3] <- "Etnia"
names(d)[4] <- "sexo"
codigos_comunales <- readRDS(file = "codigos_comunales_2006.rds")
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)
df <- filter(df,df$Comuna=="Aisén")
# df <- na.omit(df)
df_tab <- df[1:10,]
kbl(df_tab) %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
kable_paper() %>%
scroll_box(width = "100%", height = "500px")
Comuna | Alfabetismo | Etnia | sexo | Freq | Año | Código |
---|---|---|---|---|---|---|
Aisén | Sí | Mapuche | Mujer | 1058 | 2006 | 11201 |
Aisén | Sí | No pertenece a ningún pueblo indígena | Mujer | 7667 | 2006 | 11201 |
Aisén | Sí | Kawaskar | Mujer | 35 | 2006 | 11201 |
Aisén | Sí | Kawaskar | Hombre | 35 | 2006 | 11201 |
Aisén | Sí | No pertenece a ningún pueblo indígena | Hombre | 7523 | 2006 | 11201 |
Aisén | Sí | Mapuche | Hombre | 815 | 2006 | 11201 |
Aisén | No | No pertenece a ningún pueblo indígena | Hombre | 226 | 2006 | 11201 |
Aisén | No | No pertenece a ningún pueblo indígena | Mujer | 193 | 2006 | 11201 |
Aisén | No | Mapuche | Mujer | 44 | 2006 | 11201 |
Aisén | No | Mapuche | Hombre | 14 | 2006 | 11201 |
La suma de la frecuencias de la tabla precedente nos entrega la población total de Aisén. Son frecuencias totales para comuna y año, por lo que las comparaciones deberían hacerse sobre la estimación población comunal.
La siguiente pregunta la responden los inactivos
Año | Comuna | v1 | v2 | v3 | v4 | v5 | v6 | Etnia | Alfabetismo | Sexo | Expansión |
---|---|---|---|---|---|---|---|---|---|---|---|
2006 | COMUNA | O1 | O2 | O3 | O8 | O4 | O5 | T4 | E1 | SEXO | EXPC |
2009 | COMUNA | O1 | O2 | O3 | O8 | O4 | O5 | T5 | E1 | SEXO | EXPC |
2011 | comuna | o1 | o2 | o3 | o4 | o6 | o5 | r6 | e1 | sexo | expc_full |
2013 | comuna | o1 | o2 | o3 | o4 | o6 | o5 | r6 | e1 | sexo | expc |
2015 | comuna | o1 | o2 | o3 | o4 | o6 | o5 | r3 | e1 | sexo | expc_todas |
2017 | comuna | o1 | o2 | o3 | o4 | o6 | o5 | r3 | e1 | sexo | expc |
dataset_2006 <- readRDS(file = "casen_2006_c.rds")
dataset_2006 <- dataset_2006[,c("COMUNA","O1","O2","O3","O8","O4","O5","T4","E1","SEXO","EXPC")]
dataset_2009 <- readRDS(file = "casen_2009_c.rds")
dataset_2009 <- dataset_2009[,c("COMUNA","O1","O2","O3","O8","O4","O5","T5","E1","SEXO","EXPC")]
dataset_2011 <- readRDS(file = "casen_2011_c.rds")
dataset_2011 <- dataset_2011[,c("comuna","o1","o2","o3","o4","o6","o5","r6","e1","sexo","expc_full")]
dataset_2013 <- readRDS(file = "casen_2013_c.rds")
dataset_2013 <- dataset_2013[,c("comuna","o1","o2","o3","o4","o6","o5","r6","e1","sexo","expc")]
dataset_2015 <- readRDS(file = "casen_2015_c.rds")
dataset_2015 <- dataset_2015[,c("comuna","o1","o2","o3","o4","o6","o5","r3","e1","sexo","expc_todas")]
dataset_2017 <- readRDS(file = "casen_2017_c.rds")
dataset_2017 <- dataset_2017[,c("comuna","o1","o2","o3","o4","o6","o5","r3","e1","sexo","expc")]
La semana pasada trabajo al menos una hora?
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$O1
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$O1
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$o1
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$o1
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$o1
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$o1
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] <- "trabajo_una_hora"
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/trabajo_una_hora_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)
# print(head(df,10))
}
for (n in 1:6){
funcion1(n)
}
receptaculo <- data.frame()
for (n in 1 : 6){
numero <- switch(n, "2006","2009","2011","2013","2015","2017")
direc_tablas <- paste("tablas_peque/trabajo_una_hora_",numero,".rds", sep="")
tablas <- readRDS(direc_tablas)
receptaculo <<- rbind(receptaculo, tablas)
}
Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna de la variable en cuestion, luego se guarda como xlsx para hacer el tratamiento
# receptaculo_unicos <- unique(receptaculo$trabajo_una_hora)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_trabajo_una_hora.xlsx")
No se necesita diccionario para la variable en cuestion
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 |
Sí | Sí | 001 |
Sí, lee y escribe | Sí | 001 |
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 |
cod_cat <- unique(receptaculo$trabajo_una_hora)
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_trabajo_una_hora <- cadena
names(cod_cat)[1] <- "trabajo_una_hora"
cat_disc = merge( x = receptaculo, y = cod_cat, by = "trabajo_una_hora", all.x = TRUE)
cat_disc <- cat_disc[,c(1,9)]
cat_disc <- unique(cat_disc)
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 = "trabajo_una_hora", all.x = TRUE)
receptaculo<-categoriasbuenas[,c(2,1,11,9,10,7,8,3,4,5,6)]
names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "trabajo_una_hora"
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 | trabajo_una_hora | codigo_trabajo_una_hora | etnia | codigo_etnia | alfabetismo | codigo_alfabetismo | sexo | frec | anio | codigo_comuna |
---|---|---|---|---|---|---|---|---|---|---|
Osorno | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 10419 | 2013 | 10301 |
Panguipulli | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 1360 | 2013 | 14108 |
Caldera | No | 002 | Atacameño | 002 | Sí | 001 | Mujer | 42 | 2017 | 03102 |
Quintero | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 700 | 2017 | 05107 |
Frutillar | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 585 | 2009 | 10105 |
Pelluhue | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 72 | 2017 | 07203 |
San José de Maipo | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 49 | 2013 | 13203 |
Curarrehue | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 1398 | 2017 | 09104 |
Placilla | No | 002 | Diaguita | 005 | Sí | 001 | Mujer | 39 | 2011 | 06308 |
Galvarino | No | 002 | Mapuche | 006 | No | 002 | Hombre | 94 | 2015 | 09106 |
Porvenir | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 70 | 2009 | 12301 |
Puchuncaví | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 89 | 2013 | 05105 |
Arica | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 1038 | 2011 | 15101 |
Osorno | No | 002 | Alacalufes | 001 | Sí | 001 | Mujer | 76 | 2015 | 10301 |
Coquimbo | No | 002 | Coya | 004 | Sí | 001 | Mujer | 249 | 2013 | 04102 |
San Miguel | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 493 | 2015 | 13130 |
Cochamó | No | 002 | Mapuche | 006 | No | 002 | Mujer | 13 | 2006 | 10103 |
Cochrane | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 107 | 2017 | 11301 |
Alto Hospicio | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 993 | 2013 | 01107 |
Tiltil | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 9 | 2006 | 13303 |
San Pedro de la Paz | No | 002 | Mapuche | 006 | No | 002 | Hombre | 69 | 2011 | 08108 |
San Ramón | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 408 | 2009 | 13131 |
La Ligua | No | 002 | Atacameño | 002 | Sí | 001 | Mujer | 212 | 2009 | 05401 |
Chañaral | No | 002 | Diaguita | 005 | Sí | 001 | Hombre | 115 | 2013 | 03201 |
Gorbea | No | 002 | Mapuche | 006 | No | 002 | Mujer | 45 | 2013 | 09107 |
Peralillo | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 12 | 2009 | 06307 |
San Pedro de Atacama | No | 002 | Atacameño | 002 | Sí | 001 | Hombre | 540 | 2009 | 02203 |
Laja | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 105 | 2015 | 08304 |
La Cruz | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 52 | 2006 | 05504 |
Taltal | No | 002 | Diaguita | 005 | Sí | 001 | Hombre | 8 | 2013 | 02104 |
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_4_nivel_educ_padre',receptaculo, row.names=FALSE)
write_xlsx(receptaculo,"tablas_grandes/entrega_7_trabajo_una_hora.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande
Nuestra tabla de frecuencias observamos que casi la misma cantidad de personas esta activa laboralmente que las que no en todas las comunas
p1 <- plot_ly(receptaculo , x = ~trabajo_una_hora , color = ~comuna) %>% add_histogram() %>%
layout(title = "La semana pasada trabajo al menos una hora? ",
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
En nuestra tabla de contingencia obtenemos que la mayoria de las personas que dicen no pertenecer a un pueblo indigena no estuvieron activas la semana pasada a la encuesta.
p2 <- plot_ly(receptaculo , x = ~etnia , color = ~trabajo_una_hora) %>% add_histogram()%>%
layout(title = "La semana pasada trabajo al menos una hora? grupo etnico",
xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2
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$O2
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$O2
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$o2
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$o2
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$o2
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$o2
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] <- "realizo_actividad"
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/realizo_actividad_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)
# print(head(df,10))
}
for (n in 1:6){
funcion1(n)
}
receptaculo <- data.frame()
for (n in 1 : 6){
numero <- switch(n, "2006","2009","2011","2013","2015","2017")
direc_tablas <- paste("tablas_peque/realizo_actividad_",numero,".rds", sep="")
tablas <- readRDS(direc_tablas)
receptaculo <<- rbind(receptaculo, tablas)
}
Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna de la variable en cuestion, luego se guarda como xlsx para hacer el tratamiento
# receptaculo_unicos <- unique(receptaculo$realizo_actividad)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# receptaculo_unicos
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_realizo_actividad.xlsx")
No se necesita diccionario para la variable en cuestion
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 |
Sí | Sí | 001 |
Sí, lee y escribe | Sí | 001 |
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 |
cod_cat <- unique(receptaculo$realizo_actividad)
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_realizo_actividad <- cadena
names(cod_cat)[1] <- "realizo_actividad"
cat_disc = merge( x = receptaculo, y = cod_cat, by = "realizo_actividad", all.x = TRUE)
cat_disc <- cat_disc[,c(1,9)]
cat_disc <- unique(cat_disc)
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 = "realizo_actividad", all.x = TRUE)
receptaculo<-categoriasbuenas[,c(2,1,11,9,10,7,8,3,4,5,6)]
names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "realizo_actividad"
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 | realizo_actividad | codigo_realizo_actividad | etnia | codigo_etnia | alfabetismo | codigo_alfabetismo | sexo | frec | anio | codigo_comuna |
---|---|---|---|---|---|---|---|---|---|---|
Vicuña | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 92 | 2015 | 04106 |
Punta Arenas | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 54 | 2017 | 12101 |
Curicó | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 54 | 2015 | 07301 |
Huara | No | 001 | Aymara | 003 | No | 002 | Hombre | 10 | 2015 | 01404 |
Conchalí | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 44 | 2015 | 13104 |
La Florida | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 270 | 2017 | 13110 |
Negrete | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 88 | 2017 | 08307 |
Vichuquén | No | 001 | Mapuche | 006 | No | 002 | Hombre | 10 | 2006 | 07309 |
Rancagua | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 93 | 2017 | 06101 |
Vallenar | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 60 | 2015 | 03301 |
La Florida | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 222 | 2015 | 13110 |
Camarones | No | 001 | Aymara | 003 | No | 002 | Hombre | 17 | 2015 | 15102 |
Putre | No | 001 | Aymara | 003 | No | 002 | Hombre | 6 | 2017 | 15201 |
Llaillay | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 87 | 2015 | 05703 |
Pozo Almonte | No | 001 | Aymara | 003 | No | 002 | Hombre | 24 | 2015 | 01401 |
Chanco | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 21 | 2017 | 07202 |
Tierra Amarilla | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 32 | 2015 | 03103 |
San Rafael | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 65 | 2017 | 07110 |
Pozo Almonte | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 638 | 2015 | 01401 |
Mejillones | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 73 | 2017 | 02102 |
Camiña | No | 001 | Aymara | 003 | No | 002 | Hombre | 6 | 2015 | 01402 |
Máfil | No | 001 | Aymara | 003 | No | 002 | Mujer | 21 | 2017 | 14105 |
Camarones | No | 001 | Aymara | 003 | No | 002 | Mujer | 28 | 2015 | 15102 |
Huara | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 213 | 2015 | 01404 |
Puerto Varas | No | 001 | Mapuche | 006 | Sí | 001 | Hombre | 196 | 2009 | 10109 |
Iquique | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 2356 | 2017 | 01101 |
Alto Hospicio | No | 001 | Aymara | 003 | No | 002 | Mujer | 38 | 2015 | 01107 |
Lebu | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 99 | 2017 | 08201 |
Lampa | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 69 | 2017 | 13302 |
Arica | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 5601 | 2015 | 15101 |
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_4_nivel_educ_padre',receptaculo, row.names=FALSE)
write_xlsx(receptaculo,"tablas_grandes/entrega_7_realizo_actividad.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande
Las personas que manifiestan no haber trabajado la semana pasada en su gran mayoria declaran tampoco haber realizado actividad remunerada alguna
p1 <- plot_ly(receptaculo , x = ~anio , color = ~realizo_actividad) %>% add_histogram() %>%
layout(title = "Si bien no trabajo la semana pasada, realizo algun actividad? ",
xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
La mayor diferencia entre los desocupados y los que declaran no haber tenido actividad alguna en relacion con los que sí la tuvieron se da en la etnia mapuche
p2 <- plot_ly(receptaculo , x = ~etnia , color = ~realizo_actividad) %>% add_histogram()%>%
layout(title = "Si bien no trabajó la semana pasada, realizó alguna actividad? grupo étnico",
xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2
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$O3
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$O3
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$o3
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$o3
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$o3
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$o3
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] <- "tenia_algun_empleo"
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/tenia_algun_empleo_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)
# print(head(df,10))
}
for (n in 1:6){
funcion1(n)
}
receptaculo <- data.frame()
for (n in 1 : 6){
numero <- switch(n, "2006","2009","2011","2013","2015","2017")
direc_tablas <- paste("tablas_peque/tenia_algun_empleo_",numero,".rds", sep="")
tablas <- readRDS(direc_tablas)
receptaculo <<- rbind(receptaculo, tablas)
}
Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna de la variable en cuestion, luego se guarda como xlsx para hacer el tratamiento
# receptaculo_unicos <- unique(receptaculo$tenia_algun_empleo)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# receptaculo_unicos
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_realizo_actividad.xlsx")
No se necesita diccionario para la variable en cuestion
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 |
Sí | Sí | 001 |
Sí, lee y escribe | Sí | 001 |
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 |
cod_cat <- unique(receptaculo$tenia_algun_empleo)
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_tenia_algun_empleo <- cadena
names(cod_cat)[1] <- "tenia_algun_empleo"
cat_disc = merge( x = receptaculo, y = cod_cat, by = "tenia_algun_empleo", all.x = TRUE)
cat_disc <- cat_disc[,c(1,9)]
cat_disc <- unique(cat_disc)
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 = "tenia_algun_empleo", all.x = TRUE)
receptaculo<-categoriasbuenas[,c(2,1,11,9,10,7,8,3,4,5,6)]
names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "tenia_algun_empleo"
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 | tenia_algun_empleo | codigo_tenia_algun_empleo | etnia | codigo_etnia | alfabetismo | codigo_alfabetismo | sexo | frec | anio | codigo_comuna |
---|---|---|---|---|---|---|---|---|---|---|
Temuco | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 96 | 2015 | 09101 |
Iquique | No | 001 | Aymara | 003 | No | 002 | Hombre | 35 | 2015 | 01101 |
Putre | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 109 | 2015 | 15201 |
Copiapó | No | 001 | Aymara | 003 | No | 002 | Hombre | 16 | 2017 | 03101 |
Quinta Normal | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 74 | 2015 | 13126 |
Santiago | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 25 | 2015 | 13101 |
Iquique | No | 001 | Aymara | 003 | No | 002 | Hombre | 58 | 2017 | 01101 |
Pica | No | 001 | Mapuche | 006 | Sí | 001 | Mujer | 54 | 2011 | 01405 |
Maipú | No | 001 | Mapuche | 006 | No | 002 | Mujer | 476 | 2009 | 13119 |
Los Andes | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 35 | 2015 | 05301 |
Coquimbo | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 477 | 2015 | 04102 |
Villa Alegre | No | 001 | Mapuche | 006 | Sí | 001 | Hombre | 36 | 2017 | 07407 |
San Felipe | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 117 | 2015 | 05701 |
Camiña | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 20 | 2017 | 01402 |
Pica | No | 001 | Aymara | 003 | No | 002 | Hombre | 51 | 2015 | 01405 |
Arica | No | 001 | Aymara | 003 | NS/NR | 003 | Mujer | 47 | 2017 | 15101 |
Huara | No | 001 | Aymara | 003 | No | 002 | Mujer | 10 | 2015 | 01404 |
Ovalle | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 83 | 2017 | 04301 |
Camarones | No | 001 | Aymara | 003 | No | 002 | Mujer | 34 | 2015 | 15102 |
Ancud | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 56 | 2015 | 10202 |
Coyhaique | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 36 | 2017 | 11101 |
Antofagasta | No | 001 | Aymara | 003 | No | 002 | Hombre | 77 | 2017 | 02101 |
Coltauco | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 11 | 2015 | 06104 |
Dalcahue | No | 001 | Mapuche | 006 | No | 002 | Mujer | 68 | 2017 | 10205 |
Putre | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 68 | 2017 | 15201 |
Viña del Mar | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 160 | 2017 | 05109 |
Arica | No | 001 | Aymara | 003 | No | 002 | Hombre | 22 | 2017 | 15101 |
Putre | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 52 | 2015 | 15201 |
Alto Hospicio | No | 001 | Aymara | 003 | No | 002 | Mujer | 36 | 2015 | 01107 |
Cauquenes | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 26 | 2015 | 07201 |
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_4_nivel_educ_padre',receptaculo, row.names=FALSE)
write_xlsx(receptaculo,"tablas_grandes/entrega_7_tenia_algun_empleo.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande
La brecha entre los desempleados momentaneos y permanentes a aumentado en el tiempo
p1 <- plot_ly(receptaculo , x = ~anio , color = ~tenia_algun_empleo) %>% add_histogram() %>%
layout(title = "Si bien no trabajó la semana pasada, tenia algun empleo? ",
xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
En la etnia mapuche en general los que no trabajaron la semana pasada, no tienen empleo
p2 <- plot_ly(receptaculo , x = ~etnia , color = ~tenia_algun_empleo) %>% add_histogram()%>%
layout(title = "Si bien no trabajó la semana pasada, tenia algun empleo? grupo étnico",
xaxis = list(title = "Etnia"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p2
Ha trabajado alguna vez? esta le responden los desocupados
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$O8
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$O8
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$o4
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$o4
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$o4
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$o4
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] <- "trabajado_alguna_vez"
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/trabajado_alguna_vez_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)
# print(head(df,10))
}
for (n in 1:6){
funcion1(n)
}
receptaculo <- data.frame()
for (n in 1 : 6){
numero <- switch(n, "2006","2009","2011","2013","2015","2017")
direc_tablas <- paste("tablas_peque/trabajado_alguna_vez_",numero,".rds", sep="")
tablas <- readRDS(direc_tablas)
receptaculo <<- rbind(receptaculo, tablas)
}
Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna de la variable en cuestion, luego se guarda como xlsx para hacer el tratamiento
# receptaculo_unicos <- unique(receptaculo$trabajado_alguna_vez)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# # receptaculo_unicos
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_trabajado_alguna_vez.xlsx")
No se necesita diccionario para la variable en cuestion
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 |
Sí | Sí | 001 |
Sí, lee y escribe | Sí | 001 |
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 |
cat_disc <- read_xlsx("diccionario/diccionario_trabajado_alguna_vez.xlsx")
kbl(cat_disc) %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
kable_paper() %>%
scroll_box(width = "100%", height = "300px")
trabajado_alguna_vez | cat_trabajado_alguna_vez |
---|---|
Sí | Sí |
No | No |
Sin dato | NS/NR |
NS/NR | NS/NR |
No sabe/no responde | NS/NR |
cod_cat <- unique(cat_disc$cat_trabajado_alguna_vez)
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_trabajado_alguna_vez <- cadena
names(cod_cat)[1] <- "cat_trabajado_alguna_vez"
cod_cat
## cat_trabajado_alguna_vez codigo_trabajado_alguna_vez
## 1 Sí 001
## 2 No 002
## 3 NS/NR 003
cat_disc = merge( x = cat_disc, y = cod_cat, by = "cat_trabajado_alguna_vez", 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 = "trabajado_alguna_vez", 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] <- "trabajado_alguna_vez"
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 | trabajado_alguna_vez | codigo_trabajado_alguna_vez | etnia | codigo_etnia | alfabetismo | codigo_alfabetismo | sexo | frec | anio | codigo_comuna |
---|---|---|---|---|---|---|---|---|---|---|
Vallenar | No | 002 | Diaguita | 005 | Sí | 001 | Hombre | 501 | 2017 | 03301 |
Palena | No | 002 | No pertenece a ningún pueblo indígena | 007 | Sí | 001 | Mujer | 7 | 2009 | 10404 |
Futrono | No | 002 | Mapuche | 006 | No | 002 | Mujer | 76 | 2017 | 14202 |
San Vicente | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 109 | 2011 | 06117 |
Arica | No | 002 | Diaguita | 005 | Sí | 001 | Mujer | 158 | 2011 | 15101 |
Las Cabras | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 24 | 2011 | 06107 |
San Pedro de Atacama | No | 002 | Atacameño | 002 | No | 002 | Mujer | 22 | 2015 | 02203 |
Antuco | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 15 | 2015 | 08302 |
El Bosque | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 278 | 2017 | 13105 |
Sagrada Familia | No | 002 | No pertenece a ningún pueblo indígena | 007 | No | 002 | Hombre | 134 | 2015 | 07307 |
Empedrado | No | 002 | Atacameño | 002 | Sí | 001 | Mujer | 14 | 2011 | 07104 |
Santa Cruz | No | 002 | No pertenece a ningún pueblo indígena | 007 | No | 002 | Hombre | 66 | 2015 | 06310 |
Calbuco | No | 002 | No pertenece a ningún pueblo indígena | 007 | No | 002 | Hombre | 83 | 2015 | 10102 |
Casablanca | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 295 | 2011 | 05102 |
Huara | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 132 | 2011 | 01404 |
Peñalolén | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 104 | 2013 | 13122 |
Las Condes | No | 002 | Aymara | 003 | No | 002 | Mujer | 162 | 2013 | 13114 |
Máfil | No | 002 | Mapuche | 006 | No | 002 | Mujer | 8 | 2011 | 14105 |
Ovalle | No | 002 | Diaguita | 005 | Sí | 001 | Mujer | 165 | 2015 | 04301 |
Ercilla | No | 002 | Mapuche | 006 | No | 002 | Mujer | 80 | 2017 | 09204 |
Lanco | No | 002 | Mapuche | 006 | No | 002 | Mujer | 61 | 2013 | 14103 |
Los Ángeles | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 431 | 2017 | 08301 |
Caldera | No | 002 | Coya | 004 | Sí | 001 | Hombre | 108 | 2017 | 03102 |
Vallenar | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 24 | 2011 | 03301 |
Villarrica | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 2100 | 2011 | 09120 |
San Pedro de Atacama | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 34 | 2013 | 02203 |
Perquenco | No | 002 | Mapuche | 006 | No | 002 | Mujer | 52 | 2011 | 09113 |
Antofagasta | No | 002 | Mapuche | 006 | Sí | 001 | Mujer | 790 | 2017 | 02101 |
San Ignacio | No | 002 | No pertenece a ningún pueblo indígena | 007 | No | 002 | Mujer | 338 | 2017 | 16108 |
Santa Cruz | No | 002 | Mapuche | 006 | No | 002 | Mujer | 18 | 2015 | 06310 |
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_4_nivel_educ_padre',receptaculo, row.names=FALSE)
write_xlsx(receptaculo,"tablas_grandes/entrega_7_trabajado_alguna_vez.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande
Hay mayor cantidad de mujeres inactivas que hombres y en ambos sexoses mayoria la cantidad que ha trabajado alguna vez
p1 <- plot_ly(receptaculo , x = ~sexo , color = ~trabajado_alguna_vez) %>% add_histogram() %>%
layout(title = "Ha trabajado alguna vez? ",
xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
En Nacimiento la mayoria de los inactivos declara no haber trabajado nunca
p2 <- plot_ly(receptaculo , x = ~trabajado_alguna_vez , color = ~comuna) %>% add_histogram()%>%
layout(title = "Ha trabajado alguna vez?",
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
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$O4
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$O4
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$o6
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$o6
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$o6
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$o6
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] <- "busco_trabajo"
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/busco_trabajo_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)
# print(head(df,10))
}
for (n in 1:6){
funcion1(n)
}
receptaculo <- data.frame()
for (n in 1 : 6){
numero <- switch(n, "2006","2009","2011","2013","2015","2017")
direc_tablas <- paste("tablas_peque/busco_trabajo_",numero,".rds", sep="")
tablas <- readRDS(direc_tablas)
receptaculo <<- rbind(receptaculo, tablas)
}
Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna de la variable en cuestion, luego se guarda como xlsx para hacer el tratamiento
# receptaculo_unicos <- unique(receptaculo$busco_trabajo)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# receptaculo_unicos
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_trabajado_alguna_vez.xlsx")
No se necesita diccionario para la variable en cuestion
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 |
Sí | Sí | 001 |
Sí, lee y escribe | Sí | 001 |
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 |
cod_cat <- unique(receptaculo$busco_trabajo)
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_busco_trabajo <- cadena
names(cod_cat)[1] <- "busco_trabajo"
cat_disc = merge( x = receptaculo, y = cod_cat, by = "busco_trabajo", all.x = TRUE)
cat_disc <- cat_disc[,c(1,9)]
cat_disc <- unique(cat_disc)
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 = "busco_trabajo", all.x = TRUE)
receptaculo<-categoriasbuenas[,c(2,1,11,9,10,7,8,3,4,5,6)]
names(receptaculo)[1] <- "comuna"
names(receptaculo)[2] <- "busco_trabajo"
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 | busco_trabajo | codigo_busco_trabajo | etnia | codigo_etnia | alfabetismo | codigo_alfabetismo | sexo | frec | anio | codigo_comuna |
---|---|---|---|---|---|---|---|---|---|---|
Ovalle | No | 002 | Diaguita | 005 | Sí | 001 | Hombre | 835 | 2017 | 04301 |
Pica | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 585 | 2006 | 01405 |
Huara | No | 002 | Aymara | 003 | No | 002 | Mujer | 34 | 2017 | 01404 |
Colbún | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 14 | 2006 | 07402 |
Panguipulli | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 18 | 2011 | 14108 |
Porvenir | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 148 | 2006 | 12301 |
Pica | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 1227 | 2011 | 01405 |
San Pedro de Atacama | No | 002 | Atacameño | 002 | Sí | 001 | Hombre | 368 | 2006 | 02203 |
Vallenar | No | 002 | Atacameño | 002 | Sí | 001 | Hombre | 13 | 2011 | 03301 |
Lanco | No | 002 | Mapuche | 006 | No | 002 | Mujer | 319 | 2015 | 14103 |
San Pedro de Atacama | No | 002 | Atacameño | 002 | No | 002 | Mujer | 169 | 2006 | 02203 |
Vicuña | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 19 | 2009 | 04106 |
Lago Ranco | No | 002 | Mapuche | 006 | No | 002 | Hombre | 95 | 2015 | 14203 |
Arica | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 4531 | 2006 | 15101 |
La Serena | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 194 | 2011 | 04101 |
Chillán | No | 002 | Mapuche | 006 | No | 002 | Hombre | 79 | 2017 | 16101 |
Temuco | No | 002 | Mapuche | 006 | No | 002 | Hombre | 264 | 2009 | 09101 |
Alto del Carmen | No | 002 | Diaguita | 005 | Sí | 001 | Hombre | 70 | 2011 | 03302 |
Curanilahue | No | 002 | Mapuche | 006 | No | 002 | Hombre | 26 | 2006 | 08205 |
Lonquimay | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 563 | 2006 | 09205 |
Chañaral | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 199 | 2013 | 03201 |
Valparaíso | No | 002 | Aymara | 003 | Sí | 001 | Hombre | 346 | 2017 | 05101 |
Panquehue | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 9 | 2006 | 05704 |
Cartagena | No | 002 | Mapuche | 006 | No | 002 | Mujer | 267 | 2017 | 05603 |
Camiña | No | 002 | Aymara | 003 | No | 002 | Mujer | 42 | 2006 | 01402 |
Puqueldón | No | 002 | Mapuche | 006 | Sí | 001 | Hombre | 53 | 2006 | 10206 |
Chañaral | No | 002 | Diaguita | 005 | Sí | 001 | Mujer | 54 | 2015 | 03201 |
Teno | No | 002 | Aymara | 003 | Sí | 001 | Mujer | 54 | 2015 | 07308 |
Pozo Almonte | No | 002 | Aymara | 003 | No | 002 | Mujer | 14 | 2015 | 01401 |
Conchalí | No | 002 | Aymara | 003 | Sí | 001 | Hombre | 44 | 2015 | 13104 |
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_4_nivel_educ_padre',receptaculo, row.names=FALSE)
write_xlsx(receptaculo,"tablas_grandes/entrega_7_busco_trabajo.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande
Transversalmente los desocupados en su mayoria no estan en la busqueda activa de empleo
p1 <- plot_ly(receptaculo , x = ~sexo , color = ~busco_trabajo) %>% add_histogram() %>%
layout(title = "Buscó trabajo remunerado en las últimas 4 semanas? ",
xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
Transversalmente por comuna se aprecia que los desocupados que no buscan trabajo superan a los que si
p2 <- plot_ly(receptaculo , x = ~busco_trabajo , color = ~comuna) %>% add_histogram()%>%
layout(title = "Buscó trabajo remunerado en las últimas 4 semanas?",
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
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$O5
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$O5
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$o5
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$o5
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$o5
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$o5
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] <- "disponeble_para_trabajar"
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/disponeble_para_trabajar_",anio,".rds", sep="")
saveRDS(df,ingreso_rds)
# print(head(df,10))
}
for (n in 1:6){
funcion1(n)
}
receptaculo <- data.frame()
for (n in 1 : 6){
numero <- switch(n, "2006","2009","2011","2013","2015","2017")
direc_tablas <- paste("tablas_peque/disponeble_para_trabajar_",numero,".rds", sep="")
tablas <- readRDS(direc_tablas)
receptaculo <<- rbind(receptaculo, tablas)
}
Para la creación del diccionario se necesita el dataset “receptáculo” al que se le hará un unique() en la columna de la variable en cuestion, luego se guarda como xlsx para hacer el tratamiento
# receptaculo_unicos <- unique(receptaculo$disponeble_para_trabajar)
# receptaculo_unicos <- as.data.frame(receptaculo_unicos)
# # receptaculo_unicos
# write_xlsx(receptaculo_unicos,"diccionario/diccionario_disponeble_para_trabajar.xlsx")
No se necesita diccionario para la variable en cuestion
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 |
Sí | Sí | 001 |
Sí, lee y escribe | Sí | 001 |
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 |
cat_disc <- read_xlsx("diccionario/diccionario_disponeble_para_trabajar.xlsx")
kbl(cat_disc) %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
kable_paper() %>%
scroll_box(width = "100%", height = "300px")
disponeble_para_trabajar | cat_disponeble_para_trabajar |
---|---|
No | No |
Si, ahora mismo | Sí |
Sí, en otra época del año | Sí |
Sí, ahora mismo | Sí |
NS/NR | NS/NR |
Sin dato | NS/NR |
No sabe/no responde | NS/NR |
cod_cat <- unique(cat_disc$cat_disponeble_para_trabajar)
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_disponeble_para_trabajar <- cadena
names(cod_cat)[1] <- "cat_disponeble_para_trabajar"
cod_cat
## cat_disponeble_para_trabajar codigo_disponeble_para_trabajar
## 1 No 001
## 2 Sí 002
## 3 NS/NR 003
cat_disc = merge( x = cat_disc, y = cod_cat, by = "cat_disponeble_para_trabajar", 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 = "disponeble_para_trabajar", 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] <- "disponeble_para_trabajar"
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 | disponeble_para_trabajar | codigo_disponeble_para_trabajar | etnia | codigo_etnia | alfabetismo | codigo_alfabetismo | sexo | frec | anio | codigo_comuna |
---|---|---|---|---|---|---|---|---|---|---|
Río Bueno | No | 001 | Alacalufes | 001 | Sí | 001 | Hombre | 24 | 2013 | 14204 |
Catemu | No | 001 | Diaguita | 005 | No | 002 | Mujer | 62 | 2013 | 05702 |
Loncoche | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 93 | 2009 | 09109 |
San Vicente | No | 001 | Atacameño | 002 | Sí | 001 | Mujer | 104 | 2011 | 06117 |
Arica | No | 001 | Coya | 004 | Sí | 001 | Mujer | 23 | 2011 | 15101 |
Graneros | No | 001 | No pertenece a ningún pueblo indígena | 007 | Sí | 001 | Mujer | 4468 | 2017 | 06106 |
Copiapó | No | 001 | Diaguita | 005 | Sí | 001 | Hombre | 585 | 2015 | 03101 |
Huasco | No | 001 | Diaguita | 005 | Sí | 001 | Hombre | 54 | 2015 | 03304 |
María Pinto | No | 001 | Mapuche | 006 | Sí | 001 | Hombre | 16 | 2009 | 13504 |
Temuco | No | 001 | No pertenece a ningún pueblo indígena | 007 | No | 002 | Hombre | 1166 | 2009 | 09101 |
Temuco | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 77 | 2017 | 09101 |
Freirina | No | 001 | Diaguita | 005 | Sí | 001 | Hombre | 20 | 2011 | 03303 |
Pelluhue | No | 001 | No pertenece a ningún pueblo indígena | 007 | Sí | 001 | Mujer | 1590 | 2013 | 07203 |
Lonquimay | No | 001 | Mapuche | 006 | No | 002 | Hombre | 31 | 2013 | 09205 |
Panguipulli | No | 001 | Mapuche | 006 | No | 002 | Hombre | 23 | 2017 | 14108 |
Coquimbo | No | 001 | Aymara | 003 | Sí | 001 | Hombre | 142 | 2013 | 04102 |
La Serena | No | 001 | Diaguita | 005 | Sí | 001 | Mujer | 67 | 2009 | 04101 |
Santa María | No | 001 | No pertenece a ningún pueblo indígena | 007 | No | 002 | Hombre | 56 | 2015 | 05706 |
Valdivia | No | 001 | Alacalufes | 001 | Sí | 001 | Mujer | 18 | 2011 | 14101 |
Cholchol | No | 001 | Atacameño | 002 | Sí | 001 | Mujer | 11 | 2006 | 09121 |
Huara | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 220 | 2017 | 01404 |
Estación Central | No | 001 | Aymara | 003 | Sí | 001 | Mujer | 138 | 2011 | 13106 |
Ercilla | No | 001 | Mapuche | 006 | No | 002 | Mujer | 80 | 2017 | 09204 |
Monte Patria | No | 001 | No pertenece a ningún pueblo indígena | 007 | Sí | 001 | Hombre | 1318 | 2011 | 04303 |
Punitaqui | No | 001 | Diaguita | 005 | Sí | 001 | Hombre | 127 | 2017 | 04304 |
Carahue | No | 001 | Mapuche | 006 | No | 002 | Hombre | 48 | 2017 | 09102 |
San Fernando | No | 001 | No pertenece a ningún pueblo indígena | 007 | No | 002 | Hombre | 82 | 2017 | 06301 |
Temuco | No | 001 | Mapuche | 006 | No | 002 | Hombre | 42 | 2011 | 09101 |
Lo Espejo | No | 001 | Mapuche | 006 | Sí | 001 | Mujer | 374 | 2009 | 13116 |
Pitrufquén | No | 001 | Mapuche | 006 | Sí | 001 | Hombre | 813 | 2006 | 09114 |
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_4_nivel_educ_padre',receptaculo, row.names=FALSE)
write_xlsx(receptaculo,"tablas_grandes/entrega_7_disponeble_para_trabajar.xlsx")
# receptaculo <- read_xlsx("tablas_grandes/4_nivel_educ_padre.xlsx")
# head(receptaculo,3)
# tabla_grande <- dbGetQuery(con, 'SELECT * FROM tabla_discapacidad')
# tabla_grande
En ambos sexos es mayor la cantidad de los desocupados que estan con disposicion para trabajar que los que no
p1 <- plot_ly(receptaculo , x = ~sexo , color = ~disponeble_para_trabajar) %>% add_histogram() %>%
layout(title = "Está dísponeble para empezar a trabajar? ",
xaxis = list(title = "Años"),showlegend = TRUE, autosize = F, legend = list(font = list(size = 8)))
p1
En la generalidad de las comunas se observa que los desocupados que tienen disponibilidad para trabajar superan a los que no
p2 <- plot_ly(receptaculo , x = ~disponeble_para_trabajar , color = ~comuna) %>% add_histogram()%>%
layout(title = "Está dísponeble para empezar a trabajar? ",
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