Librerías e Importar datos

Análisis de Correlaciones

#Posibles relaciones

Como comienzo, se realizó un análisis de correlaciones entre la pertenencia a esta “clase media” (vulnerable en ingresos pero no en carencias por derechos sociales) y variables que se consideraron relacionadas con esta situación, como relacionadas a contar con un seguro médico (directa o indirectamente), aspectos geográficos (tamaño de localidad, estado, entorno urbano y rural), económicos (ser parte de la PEA), ingreso del hogar, y carencias de combustible, educación, servicios básicos del hogar, etc.

Después de ver las correlaciones y después de revisar la literatura, se optó por el modelo ya mencionado, cuyas correlaciones con el “cuadrante 3” son las siguientes:

#Modelo final

d<-d%>%mutate(y_3=ifelse(d$cuadrantes==3,1,0))%>%
  select(y_3,factor,plb,cuadrantes,s_salud,tamhogesc, jef_ss,ss_dir,rururb,
                     ic_sbv,tam_loc ,ic_rezedu,ic_asalud ,
                     ic_cv,isb_combus,ic_ali,ing_mon,ing_lab,ing_ren)

corrplot(cor(d,use="complete.obs"), method="circle")

cor_data2<-as.data.frame(cor(d,use="complete.obs"))
cor_data_filtered<-cor_data2 %>%select(y_3)
kable(cor_data_filtered,"simple")
y_3
y_3 1.0000000
factor 0.0393160
plb 0.2727064
cuadrantes 0.2058902
s_salud 0.2536147
tamhogesc 0.0153348
jef_ss 0.1527014
ss_dir 0.0869820
rururb -0.1385315
ic_sbv -0.1387349
tam_loc -0.1378455
ic_rezedu -0.1195590
ic_asalud -0.1015285
ic_cv -0.0920716
isb_combus -0.1022561
ic_ali -0.1290118
ing_mon -0.0636082
ing_lab -0.0593610
ing_ren -0.0139089

Donde las relaciones más claras son negativas con indicadores de carencias a servicios médicos y de educación. Como sabemos, esta población es vulnerable en ingresos, pero no en carencias en derechos sociales, por lo que este modelo parece adecuado.

Tabla descriptivas

Realizamos una tabla de estadísticas descriptivas con estadísticos básicos: media, rango, y desviación estándar.

t1<-tableby(as.factor(cuadrantes)~.,data=d)
## Warning in anova.lm(aov.out): ANOVA F-tests on an essentially perfect fit are
## unreliable

## Warning in anova.lm(aov.out): ANOVA F-tests on an essentially perfect fit are
## unreliable
l1<-list(plb="Ingreso < LB",s_salud="Servicios médicos",jef_ss="Acceso SS x jefatura",
         rururb="Loc. Rural",ic_sbv="Carencia serv. básicos viv.", 
         tam_loc="Tamaño loc.", ic_rezedu="Carencia rezago educativo",
         ic_asalud="Carencia x acceso serv. salud",ic_cv="carencia x calidad y esp. vivienda",
         isb_combus="Carencia acceso serv. combustible", ic_ali="Carencia acceso alimentación")
t2<-summary(t1, title = "Estadísticas Descriptivas",labelTranslations = l1)

kable(t2,"simple")
1 (N=107558) 2 (N=89949) 3 (N=15974) 4 (N=55575) Total (N=269056) p value
y_3 < 0.001
   Mean (SD) 0.000 (0.000) 0.000 (0.000) 1.000 (0.000) 0.000 (0.000) 0.059 (0.236)
   Range 0.000 - 0.000 0.000 - 0.000 1.000 - 1.000 0.000 - 0.000 0.000 - 1.000
factor < 0.001
   Mean (SD) 487.420 (458.595) 407.746 (456.481) 540.128 (540.615) 492.166 (531.349) 464.894 (480.819)
   Range 9.000 - 6371.000 9.000 - 6727.000 9.000 - 6371.000 9.000 - 6371.000 9.000 - 6727.000
Ingreso < LB < 0.001
   Mean (SD) 1.000 (0.000) 0.000 (0.000) 1.000 (0.000) 0.000 (0.000) 0.459 (0.498)
   Range 1.000 - 1.000 0.000 - 0.000 1.000 - 1.000 0.000 - 0.000 0.000 - 1.000
Servicios médicos < 0.001
   Mean (SD) 0.083 (0.276) 0.123 (0.329) 0.624 (0.484) 0.485 (0.500) 0.212 (0.408)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000
tamhogesc < 0.001
   Mean (SD) 4.346 (1.793) 3.862 (1.739) 4.126 (1.494) 3.623 (1.410) 4.022 (1.709)
   Range 1.000 - 18.560 1.000 - 14.234 1.000 - 14.359 1.000 - 13.215 1.000 - 18.560
Acceso SS x jefatura < 0.001
   Mean (SD) 0.109 (0.311) 0.225 (0.418) 0.573 (0.495) 0.690 (0.462) 0.295 (0.456)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000
ss_dir < 0.001
   Mean (SD) 0.042 (0.200) 0.097 (0.296) 0.286 (0.452) 0.451 (0.498) 0.159 (0.366)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000
Loc. Rural < 0.001
   Mean (SD) 0.449 (0.497) 0.495 (0.500) 0.125 (0.331) 0.206 (0.405) 0.395 (0.489)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000 0.000 - 1.000
Carencia serv. básicos viv. < 0.001
   Mean (SD) 0.382 (0.486) 0.242 (0.428) 0.000 (0.000) 0.000 (0.000) 0.234 (0.423)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 0.000 0.000 - 0.000 0.000 - 1.000
Tamaño loc. < 0.001
   Mean (SD) 2.848 (1.222) 2.798 (1.321) 1.866 (1.088) 1.935 (1.216) 2.584 (1.310)
   Range 1.000 - 4.000 1.000 - 4.000 1.000 - 4.000 1.000 - 4.000 1.000 - 4.000
Carencia rezago educativo < 0.001
   Mean (SD) 0.272 (0.445) 0.228 (0.419) 0.000 (0.000) 0.000 (0.000) 0.185 (0.388)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 0.000 0.000 - 0.000 0.000 - 1.000
Carencia x acceso serv. salud < 0.001
   Mean (SD) 0.170 (0.376) 0.217 (0.412) 0.000 (0.000) 0.000 (0.000) 0.140 (0.347)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 0.000 0.000 - 0.000 0.000 - 1.000
carencia x calidad y esp. vivienda < 0.001
   Mean (SD) 0.207 (0.405) 0.106 (0.308) 0.000 (0.000) 0.000 (0.000) 0.118 (0.323)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 0.000 0.000 - 0.000 0.000 - 1.000
Carencia acceso serv. combustible < 0.001
   Mean (SD) 0.263 (0.440) 0.111 (0.314) 0.000 (0.000) 0.000 (0.000) 0.142 (0.349)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 0.000 0.000 - 0.000 0.000 - 1.000
Carencia acceso alimentación < 0.001
   Mean (SD) 0.338 (0.473) 0.220 (0.414) 0.000 (0.000) 0.000 (0.000) 0.209 (0.406)
   Range 0.000 - 1.000 0.000 - 1.000 0.000 - 0.000 0.000 - 0.000 0.000 - 1.000
ing_mon < 0.001
   N-Miss 25 18 1 1 45
   Mean (SD) 6293.001 (4212.222) 17141.296 (25054.189) 8268.711 (3945.547) 23053.655 (28118.788) 13499.445 (20660.956)
   Range 0.000 - 49847.361 0.000 - 1534751.736 0.000 - 40686.287 0.000 - 1273386.926 0.000 - 1534751.736
ing_lab < 0.001
   N-Miss 25 18 1 1 45
   Mean (SD) 5288.504 (4209.371) 15042.766 (22729.363) 7088.411 (4190.631) 19651.484 (27224.622) 11623.444 (19194.646)
   Range 0.000 - 49541.166 0.000 - 1273386.926 0.000 - 36570.953 0.000 - 1273386.926 0.000 - 1273386.926
ing_ren < 0.001
   N-Miss 25 18 1 1 45
   Mean (SD) 23.939 (249.710) 235.403 (3297.893) 31.574 (275.354) 310.013 (2435.268) 154.184 (2214.802)
   Range 0.000 - 9544.226 0.000 - 280869.599 0.000 - 9544.226 0.000 - 128400.652 0.000 - 280869.599

Algunos aspectos que notamos del cuadrante 3 respecto a los otros son: * Mayor proporción de su población viviendo en localidades de menos de 2500 habitantes (y rural) * Antecedido por el cuadrante 1, tienen el mayor promedio de integrantes del hogar (4.1) * No cuentan con carencias educativas ni de salud, y junto con el cuadrante 4 tienen la mayor proporción de acceso a servicios médicos. * La inseguridad alimentaria no es 0 pero es baja (respecto a los cuadrantes 1 y 2). *Tienen el menor promedio de ingreso per cápita y del hogar.

Datos cruzados cuadrantes y variables de interés

Para corroborar y ver con más detalle la relación entre los cuadrantes con las variables de interés dicotómicas (indicadores de carencias y accesos), generamos gráficos de barras mostrando al porcentaje de personas que sí o que no contaban con el atributo respectivo. Omitimos las gráficas de los indicadores de carencia por acceso a alimentación, a servicios de combustible, servicios básicos de vivienda y a servicios de salud; y a la carencia por rezago educativo debido a que el porcentaje de personas del cuadrante 3 con estas carencias era 0%.

PlotXTabs(d,s_salud,cuadrantes,plottype = "percent")
## Plotted dataset d variables s_salud by cuadrantes

PlotXTabs(d,jef_ss,cuadrantes,plottype = "percent")
## Plotted dataset d variables jef_ss by cuadrantes

PlotXTabs(d,ss_dir,cuadrantes,plottype = "percent")
## Plotted dataset d variables ss_dir by cuadrantes

PlotXTabs(d,rururb,cuadrantes,plottype = "percent")
## Plotted dataset d variables rururb by cuadrantes

PlotXTabs(d,tam_loc,cuadrantes,plottype = "percent")
## Plotted dataset d variables tam_loc by cuadrantes

Boxplots de ingresos monetarios por hogar por cuadrantes

Luego se realizaron boxplots para observar el comportamiento del ingreso per cápita y de los hogares de los cuadrantes. ### Boxplot de ingreso per cápita por cuadrantes

#{r} ggplot(data=subset(d,!is.na(cuadrantes)),aes(x=as.factor(cuadrantes), y=ictpc, fill=as.factor(cuadrantes))) + geom_boxplot() + scale_fill_viridis(discrete = TRUE, alpha=0.6, option="A") + theme_ipsum() + theme( legend.position="none", plot.title = element_text(size=11) ) + ggtitle("Ingreso per Cápita por Cuadrante") + xlab("")+ ylim(0,7000) #

Podemos observar que los ingresos per cápita del cuadrante 3 son solo ligeramente mayores a los del 1, con menor varianza.

ggplot(data=subset(d,!is.na(cuadrantes)),aes(x=as.factor(cuadrantes), y=ing_mon, fill=as.factor(cuadrantes))) +
  geom_boxplot() +
  scale_fill_viridis(discrete = TRUE, alpha=0.6, option="A") +
  theme_ipsum() +
  theme(
    legend.position="none",
    plot.title = element_text(size=11)
  ) +
  ggtitle("Ingreso por Cuadrante") +
  xlab("")+
  ylim(0,35000)
## Warning: Removed 13713 rows containing non-finite values (stat_boxplot).

Se observa el mismo patrón en el de ingresos por hogar, aunque en este gráfico no se muestra tan distanciado del cuadrante 2.

Ingreso laboral por cuadrantes: Cuentan con seguro social vs sin SS

Para observar la relación entre servicios médicos e ingresos laborales realizamos este gráfico de barras. Notamos que las familias que cuentan con servicios médicos por contratación propia u otros medios tienen un ingreso laboral sustancialmente mayor.

ggplot(data=subset(d,!is.na(cuadrantes)),aes(x=as.factor(cuadrantes),y=ing_lab))+geom_bar(stat='identity')+
  facet_wrap(facets=vars(s_salud),scales="free_y")
## Warning: Removed 45 rows containing missing values (position_stack).

Regresión Tamaño del hogar vs Ingreso Monetario, por cuadrante

Por último y con fines exploratorios, quisimos observar la relación entre tamaño del hogar, ingreso monetario de este y cuadrante.

ggplot(data=subset(d,!is.na(cuadrantes)),aes(x=tamhogesc, y=ing_mon, col=as.factor(cuadrantes))) + 
  geom_smooth(method="lm", size=1, se=FALSE) + 
  coord_cartesian(xlim=c(0, 19), ylim=c(0, 35000)) + 
  labs( y="Ingreso hogares",
        x="Tamaño hogar", caption="Por Cuadrante")
## `geom_smooth()` using formula 'y ~ x'
## Warning: Removed 45 rows containing non-finite values (stat_smooth).

Notamos comportamientos diferentes entre los grupos 2 y 4 (los que tienen ingresos mayores a la línea de pobreza) y el 1 y 3. El primer grupo tiene una pendiente mayor que los otros. Asimismo, el segundo grupo parece partir del mismo punto, pero a medida que el número de integrantes del hogar va creciendo, aumenta el ingreso más rápidamente.