Correlaciones entre variables del CENSO de Viviendas, Hogares y Personas e Ingresos promedios comunales de la CASEN 2017.

VE-CC-AJ

DataIntelligence

Martes 13-07-2021

1 Nivel nacional URBANO (código 1)

1.1 Pregunta TIPO_HOGAR:

Esta pregunta posee 7 categorias de respuesta:

1 Hogar unipersonal
2 Hogar nuclear monoparental
3 Hogar nuclear biparental sin hijos 4 Hogar nuclear biparental con hijos
5 Hogar compuesto
6 Hogar extenso
7 Hogar sin núcleo

Leemos las respuestas a la pregunta TIPO_HOGAR del censo de viviendas 2017 y obtenemos la tabla de frecuencias por categoría:

tabla_con_clave <- readRDS("censos/censo_hogares_con_clave_17")

tabla_con_clave_u <- filter(tabla_con_clave, tabla_con_clave$AREA == 1)
b <- tabla_con_clave_u$COMUNA
c <- tabla_con_clave_u$TIPO_HOGAR
cross_tab =  xtabs( ~ unlist(b) + unlist(c))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2017"

# apilamos:

 d_t <- filter(d,d$unlist.c. == 1)
for(i in 2:7){
  d_i <- filter(d,d$unlist.c. == i)
  d_t = merge( x = d_t, y = d_i, by = "unlist.b.", all.x = TRUE)
}
# Agregamos un cero a los códigos comunales de 4 dígitos, que queda en la columna llamada **código**:
codigos <- d_t$unlist.b.
rango <- seq(1:nrow(d_t))
cadena <- paste("0",codigos[rango], sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(4),6)
codigos <- as.data.frame(codigos)
cadena <- as.data.frame(cadena)
comuna_corr <- cbind(d_t,cadena)
comuna_corr <- comuna_corr[,-c(1),drop=FALSE] 
names(comuna_corr)[ncol(comuna_corr)] <- "código"

quitar <- seq(3,(ncol(comuna_corr)-1),3)
comuna_corr <- comuna_corr[,-c(quitar),drop=FALSE]

names(comuna_corr )[2] <- "Hogar unipersonal"
names(comuna_corr )[4] <- "Hogar nuclear monoparental"
names(comuna_corr )[6] <- "Hogar nuclear biparental sin hijos "
names(comuna_corr )[8] <- "Hogar nuclear biparental con hijos"
names(comuna_corr )[10] <- "Hogar compuesto"
names(comuna_corr )[12] <- "Hogar extenso"
names(comuna_corr )[14] <- "Hogar sin núcleo"

quitar <- seq(1,(ncol(comuna_corr)-1),2)
comuna_corr <- comuna_corr[,-c(quitar),drop=FALSE]

ingresos_expandidos_2017 <- readRDS("Ingresos_expandidos_urbano_17.rds")
df_2017_2 = merge( x = comuna_corr, y = ingresos_expandidos_2017, by = "código", all.x = TRUE)
df_2017_2 <- df_2017_2[,-c(9)]
df_2017_3 <- df_2017_2
comuna_corr <- df_2017_2

1.1.0.1 Tabla a correlacionar:

#union_final_urb_corr  <- union_final_urb[,-c(1)]
write_xlsx(comuna_corr, "TIPO_HOGAR_urbano.xlsx")

1.1.0.2 Estadísticos básicos de nuestras frecuencias

data_sum <- summary(comuna_corr)

kbl(head(data_sum)) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "500px")
código Hogar unipersonal Hogar nuclear monoparental Hogar nuclear biparental sin hijos Hogar nuclear biparental con hijos Hogar compuesto Hogar extenso Hogar sin núcleo ingresos_expandidos
Length:319 Min. : 70.0 Min. : 31.0 Min. : 19 Min. : 56 Min. : 6.0 Min. : 30 Min. : 18.0 Min. :7.054e+08
Class :character 1st Qu.: 322.5 1st Qu.: 245.5 1st Qu.: 231 1st Qu.: 524 1st Qu.: 38.5 1st Qu.: 327 1st Qu.: 99.0 1st Qu.:2.954e+09
Mode :character Median : 837.0 Median : 615.0 Median : 545 Median : 1236 Median : 101.0 Median : 842 Median : 258.0 Median :5.697e+09
NA Mean : 2719.3 Mean : 2039.2 Mean : 1903 Mean : 4445 Mean : 398.7 Mean : 2980 Mean : 1038.8 Mean :1.784e+10
NA 3rd Qu.: 2502.5 3rd Qu.: 2197.0 3rd Qu.: 1821 3rd Qu.: 4748 3rd Qu.: 379.0 3rd Qu.: 3098 3rd Qu.: 858.5 3rd Qu.:1.857e+10
NA Max. :61429.0 Max. :21508.0 Max. :32189 Max. :60836 Max. :4865.0 Max. :37967 Max. :22623.0 Max. :1.870e+11

1.1.0.3 Gráficas:

df_2017_exp_subset <- comuna_corr
library(plotly)
df_2017_fig <- df_2017_exp_subset
df_2017_fig <- mutate_all(df_2017_fig, ~replace(., is.na(.), -99))
fig <- plot_ly(df_2017_fig, x = df_2017_fig$código, y = df_2017_fig[,2]
, name = colnames(df_2017_fig[2]), type = 'scatter', mode = 'lines',
                 width=7000, height=400) 
grafica_fn <- function(g){
  fig <<- fig %>% add_trace(y = ~df_2017_fig[,g]
, name = colnames(df_2017_fig[g]), mode = 'lines',
                 width=7000, height=400) 
}
for (g in 3:(ncol(df_2017_fig))) {
grafica_fn(g)
}
fig <- fig %>% layout(autosize = T)
fig 

2 \(\tau\) de Kendall

df_2017_2 <- df_2017_3

df_2017_2f <- filter(df_2017_2, df_2017_2$ingresos_expandidos != 'is.na')
III <- seq(2,(ncol(df_2017_2))-1,1)
my_data <- df_2017_2f[, c(III)]
tabla <- cor(x=my_data, y=df_2017_2f$ingresos_expandidos, method=c("kendall"), use = "pairwise")
tabla <- as.data.frame(tabla)

tabla %>% rownames_to_column("Hogares")%>%  
  mutate(V1 = cell_spec(V1, background=ifelse(V1 == max(V1), "#fc0303", "#5cb81f"))) %>% 
  kbl(booktabs = T, linesep = "", escape=FALSE) %>% 
    kable_paper(full_width = F) %>%
    column_spec(1, color = "black")%>%
    column_spec(2, color = "white")
Hogares V1
Hogar unipersonal 0.831065787830482
Hogar nuclear monoparental 0.846679987244619
Hogar nuclear biparental sin hijos 0.835240831084656
Hogar nuclear biparental con hijos 0.857360622755979
Hogar compuesto 0.843828832944469
Hogar extenso 0.84671610909709
Hogar sin núcleo 0.833911631261774

2.1 Kendall

df_2017_2[df_2017_2 == -99] <- NA
df_2017_2 <- df_2017_2[,-c(1)]
df_2017_fig <- df_2017_2
chart.Correlation(df_2017_fig, histogram=TRUE, method = c( "kendall"), pch=20)

2.2 Pearson

chart.Correlation(df_2017_fig, histogram=TRUE, method = c( "pearson"), pch=20)

2.3 Spearman

chart.Correlation(df_2017_fig, histogram=TRUE, method = c( "spearman"), pch=20)




3 Nivel nacional RURAL (código 2)

3.1 Pregunta TIPO_HOGAR:

Esta pregunta posee 7 categorias de respuesta:

1 Hogar unipersonal
2 Hogar nuclear monoparental
3 Hogar nuclear biparental sin hijos 4 Hogar nuclear biparental con hijos
5 Hogar compuesto
6 Hogar extenso
7 Hogar sin núcleo

Leemos las respuestas a la pregunta TIPO_HOGAR del censo de viviendas 2017 y obtenemos la tabla de frecuencias por categoría:

tabla_con_clave <- readRDS("censos/censo_hogares_con_clave_17")

tabla_con_clave_u <- filter(tabla_con_clave, tabla_con_clave$AREA == 2)
b <- tabla_con_clave_u$COMUNA
c <- tabla_con_clave_u$TIPO_HOGAR
cross_tab =  xtabs( ~ unlist(b) + unlist(c))
tabla <- as.data.frame(cross_tab)
d <-tabla[!(tabla$Freq == 0),]
d$anio <- "2017"

# apilamos:

 d_t <- filter(d,d$unlist.c. == 1)
for(i in 2:7){
  d_i <- filter(d,d$unlist.c. == i)
  d_t = merge( x = d_t, y = d_i, by = "unlist.b.", all.x = TRUE)
}
# Agregamos un cero a los códigos comunales de 4 dígitos, que queda en la columna llamada **código**:
codigos <- d_t$unlist.b.
rango <- seq(1:nrow(d_t))
cadena <- paste("0",codigos[rango], sep = "")
cadena <- substr(cadena,(nchar(cadena)[rango])-(4),6)
codigos <- as.data.frame(codigos)
cadena <- as.data.frame(cadena)
comuna_corr <- cbind(d_t,cadena)
comuna_corr <- comuna_corr[,-c(1),drop=FALSE] 
names(comuna_corr)[ncol(comuna_corr)] <- "código"

quitar <- seq(3,(ncol(comuna_corr)-1),3)
comuna_corr <- comuna_corr[,-c(quitar),drop=FALSE]

names(comuna_corr )[2] <- "Hogar unipersonal"
names(comuna_corr )[4] <- "Hogar nuclear monoparental"
names(comuna_corr )[6] <- "Hogar nuclear biparental sin hijos "
names(comuna_corr )[8] <- "Hogar nuclear biparental con hijos"
names(comuna_corr )[10] <- "Hogar compuesto"
names(comuna_corr )[12] <- "Hogar extenso"
names(comuna_corr )[14] <- "Hogar sin núcleo"

quitar <- seq(1,(ncol(comuna_corr)-1),2)
comuna_corr <- comuna_corr[,-c(quitar),drop=FALSE]

ingresos_expandidos_2017 <- readRDS("Ingresos_expandidos_rural_17.rds")
df_2017_2 = merge( x = comuna_corr, y = ingresos_expandidos_2017, by = "código", all.x = TRUE)
df_2017_2 <- df_2017_2[,-c(9)]
df_2017_3 <- df_2017_2
comuna_corr <- df_2017_2

3.1.0.1 Tabla a correlacionar:

#union_final_urb_corr  <- union_final_urb[,-c(1)]
write_xlsx(comuna_corr, "TIPO_HOGAR_rural.xlsx")

3.1.0.2 Estadísticos básicos de nuestras frecuencias

data_sum <- summary(comuna_corr)

kbl(head(data_sum)) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kable_paper() %>%
  scroll_box(width = "100%", height = "500px")
código Hogar unipersonal Hogar nuclear monoparental Hogar nuclear biparental sin hijos Hogar nuclear biparental con hijos Hogar compuesto Hogar extenso Hogar sin núcleo ingresos_expandidos
Length:318 Min. : 2.0 Min. : 1.0 Min. : 1.0 Min. : 5.0 Min. : 1.00 Min. : 1.0 Min. : 2.0 Min. :2.792e+08
Class :character 1st Qu.: 194.8 1st Qu.: 90.0 1st Qu.: 140.0 1st Qu.: 224.8 1st Qu.: 21.00 1st Qu.: 136.8 1st Qu.: 55.0 1st Qu.:1.809e+09
Mode :character Median : 358.0 Median : 161.0 Median : 272.0 Median : 491.0 Median : 39.00 Median : 298.0 Median :102.0 Median :3.546e+09
NA Mean : 429.9 Mean : 212.7 Mean : 344.5 Mean : 655.3 Mean : 49.66 Mean : 387.3 Mean :126.8 Mean :8.206e+09
NA 3rd Qu.: 588.8 3rd Qu.: 285.5 3rd Qu.: 472.0 3rd Qu.: 847.0 3rd Qu.: 63.00 3rd Qu.: 509.2 3rd Qu.:172.5 3rd Qu.:7.252e+09
NA Max. :2561.0 Max. :1565.0 Max. :2599.0 Max. :5573.0 Max. :374.00 Max. :2997.0 Max. :736.0 Max. :7.585e+10

3.1.0.3 Gráficas:

df_2017_exp_subset <- comuna_corr
library(plotly)
df_2017_fig <- df_2017_exp_subset
df_2017_fig <- mutate_all(df_2017_fig, ~replace(., is.na(.), -99))
fig <- plot_ly(df_2017_fig, x = df_2017_fig$código, y = df_2017_fig[,2]
, name = colnames(df_2017_fig[2]), type = 'scatter', mode = 'lines',
                 width=7000, height=400) 
grafica_fn <- function(g){
  fig <<- fig %>% add_trace(y = ~df_2017_fig[,g]
, name = colnames(df_2017_fig[g]), mode = 'lines',
                 width=7000, height=400) 
}
for (g in 3:(ncol(df_2017_fig))) {
grafica_fn(g)
}
fig <- fig %>% layout(autosize = T)
fig 

4 \(\tau\) de Kendall

df_2017_2 <- df_2017_3

df_2017_2f <- filter(df_2017_2, df_2017_2$ingresos_expandidos != 'is.na')
III <- seq(2,(ncol(df_2017_2))-1,1)
my_data <- df_2017_2f[, c(III)]
tabla <- cor(x=my_data, y=df_2017_2f$ingresos_expandidos, method=c("kendall"), use = "pairwise")
tabla <- as.data.frame(tabla)

tabla %>% rownames_to_column("Hogares")%>%  
  mutate(V1 = cell_spec(V1, background=ifelse(V1 == max(V1), "#fc0303", "#5cb81f"))) %>% 
  kbl(booktabs = T, linesep = "", escape=FALSE) %>% 
    kable_paper(full_width = F) %>%
    column_spec(1, color = "black")%>%
    column_spec(2, color = "white")
Hogares V1
Hogar unipersonal 0.236416863959986
Hogar nuclear monoparental 0.26923953892542
Hogar nuclear biparental sin hijos 0.301239166580422
Hogar nuclear biparental con hijos 0.366435594228793
Hogar compuesto 0.398431125789511
Hogar extenso 0.338373987890383
Hogar sin núcleo 0.249033536316092

4.1 Kendall

df_2017_2[df_2017_2 == -99] <- NA
df_2017_2 <- df_2017_2[,-c(1)]
df_2017_fig <- df_2017_2
chart.Correlation(df_2017_fig, histogram=TRUE, method = c( "kendall"), pch=20)

4.2 Pearson

chart.Correlation(df_2017_fig, histogram=TRUE, method = c( "pearson"), pch=20)

4.3 Spearman

chart.Correlation(df_2017_fig, histogram=TRUE, method = c( "spearman"), pch=20)