El presente trabajo plantea buscar la correlación entre el uso de servicios alimenticios del Estado en 194 provincias del Perú y algunos de sus indicadores sociales a raiz de intentar predecir en menor o mayor medida el uso de dichos servicios dependiendo de los indices sociales de dicho territorio. En ese sentido, nuestra propuesta es que el porcentaje de uso de servicios alimentarios proporcionados por el Estado se puede predecir a partir de variables como la prioridad de dicha provincia para el estado y la calidad de vida de la misma.
De esta forma, el presente trabajo plantea la búsqueda de la correlación entre el uso de servicios alimenticios del Estados por provincia y algunos indicadores sociales. En aras de predecir en menor o mayor medida el uso de dichos servicios dependiendo de los índices sociales de dicho territorio. Los programas alimenticios en el Perú, sustentan la alimentación de cerca la mitad de hogares en el país. No obstante, existe una inmensa brecha entre el consumo de zonas urbanas, el cual representa un 38%, y el consumo de zonas rurales, el cual se expresa en un 71%. (Portocarrero et al., 2000). De tal manera, demostrando una divergencia dentro del uso de dichos servicios del Estado de forma ya estructurada dentro de ciertos territorios geográficos del país.
Es en ese sentido, que presentamos como propuesta que el uso de servicios alimentarios proporcionados por parte del Estado se predice principalmente a partir de dos índices particulares: En primer lugar, se encuentra la prioridad estatal. Esta podemos identificarla como el cumplimiento estatal de sus propias funciones, principalmente en base a la protección de los derechos de su población y la distribución equitativa de recursos; sin importar el espacio geográfico en el cual se encuentre (Mendoza, 2000). Por ello, para su estudio se han planteado los indicadores si la provincia es capital de departamento, puesto que esta (al encontrarse el gobierno reginal en esta) poseer una mayor cantidad de recursos que el resto; el nivel de educación medio en tanto este representa en mayor medida uno de los gastos fundamentales del gobierno central en todo el territorio y de los gobiernos regional y local y el índice de densidad del Estado en dicha provincia que corresponde al alcance de los servicios del Estado en un territorio determinado.
En segundo lugar, se presenta la calidad de vida. Este es un concepto complejo, el cual puede determinarse en base al cumplimiento de objetivos como el desarrollo integral personal, salud objetivamente considerada, productividad personal y de más. La OMS lo presenta como la percepción personal sobre el sistema en el cual uno se desenvuelve y las posibilidades que posee de cumplir con sus estándares o metas propuestas dentro de sus expectativas. (Galán, 2012). En esta línea, para su estudio a su vez se han determinado ciertos indicadores como el Índice de desarrollo humano de cada provincia, la capacidad de ingresos per capita por caso y la esperanza de vida media en cada uno de los mismos.
A través de lo planteado desde la teoría podemos postular que la relación existente entre nuestras variables independientes (Prioridad estatal y calidad de vida) tienen una relación inversa con la variable dependiente (proporcion de uso de servicios alimenticios). Es decir, a mayor prioridad frente al Estado y mayor calidad de vida es menor el uo de estos servicios por parte de la población, lo que nos indicaría que estos servicios son usados en su mayoría por personas que tienen poco contacto con el Estado y el existente han de aprovecharlo al maximo. Este estudio presentará diversos pasos, los cuales expresaran nuestro interés por proporcionar una explicación sobre este fenómeno con la finalidad de establecer investigaciones de las particularidades de las provincias en nuestro pais y la relación del desarrollo integral como ciudadanos de sus habitantes con la necesidad de adquirir esta clase de servicios alimentarios por parte del Estado.
Para hacer el análisis presentado anteriormente es necesario primero cargar todas las librerías necesarias para nuestro estudio. El uso de cada una de ellas se explica en el Anexo 4.
library(rio)
library(stargazer)
library(tidyverse)
library(stringr)
library(cluster)
library(factoextra)
library(fpc)
library(sf)
library(lmtest)
library(DescTools)
library(polycor)
library(ggcorrplot)
library(psych)
library(matrixcalc)
library(GPArotation)
library(lavaan)
library(BBmisc)
Otro paso previo necesario es crear nuestra base de datos. Para obtener estos se ha subido a un repositorio en Github diferentes bases externas. La primera, denominada “a” en los codigos presentados, es el módulo 37 de la encuesta nacional ENAHO, el cual refiere al uso de servicios alimenticios por persona, a partir de esta crearemos nuestra variable dependiente. Primero tomaremos de esta las variables necesarias y creareamos una nueva base que nos indique qué personas encuestadas han recibido servicios alimenticios por parte del Estado y cuales no. Para crear nuestra variable independiente se dividirá el número de personas que usan estos servicios por provinvia entre el total de encuestados de la misma provincia.
a = import("https://github.com/Fabians099/grupal/blob/main/Enaho01-2020-700.csv?raw=true")
data = data.frame(
ubi = a$UBIGEO,
a = a$`P701$01`,
b = a$`P701$02`,
c = a$`P701$03`,
d = a$`P701$04`,
e = a$`P701$05`,
f = a$`P701$06`,
g = a$`P701$07`,
h = a$`P701$08`,
i = a$`P701$10`)
data$vardep = data$a + data$c + data$d + data$e + data$i
data = data %>% mutate(vardep = replace(vardep, vardep >= 1, 1))
data$prov = substr(data$ubi,1,nchar(data$ubi)-2)
data$prov=str_pad(data$prov, 4, pad = "0")
data = na.omit(data)
data_prov = data %>% select(vardep, prov)
data_prov = data_prov %>%
group_by(prov) %>%
summarize(vardep=sum(vardep))
data_tot = data %>% select(vardep, prov)
data_tot = data_tot %>%
group_by(prov) %>%
summarise(total = n())
data_prov = merge(data_prov,data_tot, by = "prov")
data_prov$proporcion = data_prov$vardep / data_prov$total
data_prov = data_prov[,c(1,4)]
Luego, el primer grupo de variables independientes (el Indice de Densidad del Estado, el Indice de Desarrollo Humano y si la provincia es capital de región o no) lo extraerémos de una base de datos propia editada a partir de una existente otorgada por CEPLAN la cual por temas prácticos sera denominaca “b”. En esta unicamente se modificará la variable del ubigeo de cada provinicia para poder unir esta data con la anterior.
b = import("https://github.com/Fabians099/grupal/blob/main/Datos.xlsx?raw=true")
names(b) = c("ubi", "departamento", "provincia", "IDE", "IDH","IVIA", "cap")
b = b[,-6]
b$ubi=b$ubi/100
b$ubi=str_pad(b$ubi, 4, pad = "0")
b = merge(b, data_prov, by.x = "ubi", by.y = "prov", all.x = T)
El segundo grupo de variables independientes (la esperanza de vida al nacer, los años de educación medios y el ingreso medio per capita) se obtendran de una base de datos del PNUD (Programa de las Naciones Unidas para el Desarrollo) la cual será llamada “c”. Esta data será limpiada pues contiene datos por distrito y departamento además de las provincias que es lo que necesitamos. Se eliminarán las variables innecesarias y se modificará la variable del ubigeo para poder unir esta base a la anterior.
c = import("https://github.com/Fabians099/grupal/blob/main/IDH%202019.xlsx?raw=true")
c = c[-c(1:8),]
names(c) = c("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q")
c$r = substr(c[,1],5,6)
c = filter(c,r == "00")
c$s =substr(c[,1],3,4)
c = filter(c,s != "00")
c = c[,c(1,12,15,16)]
names(c) = c("a","vida", "edu", "ingre")
c[,-c(1)]=lapply(c[,-c(1)],as.numeric)
c$a = substr(c[,1],1,4)
Con todos los datos ya ordenados lo ultimo antes de presentar nuestra base de datos sería unir “c” a “b” para tener todas nuestras variables (además de los nombres de las provincias, su departamento y ubigeos) en una misma base de datos.
b = merge(b, c, by.x = "ubi", by.y = "a", all.x = T)
Nuestra base de datos “b” será la que usaremos para el resto del análisis. Un vistazo a los primeros datos sería el siguiente
head(b)
## ubi departamento provincia IDE IDH cap proporcion
## 1 0101 AMAZONAS CHACHAPOYAS 0.7672790 0.5426653 1 0.4449153
## 2 0102 AMAZONAS BAGUA 0.6492029 0.4610362 0 0.4833333
## 3 0103 AMAZONAS BONGARA 0.7163909 0.4128955 0 0.5542169
## 4 0104 AMAZONAS CONDORCANQUI 0.4088290 0.2534516 0 0.7244898
## 5 0105 AMAZONAS LUYA 0.7052045 0.3410502 0 0.6256158
## 6 0106 AMAZONAS RODRIGUEZ DE MENDOZA 0.6741977 0.3664074 0 0.4126984
## vida edu ingre
## 1 0.7886118 0.5491744 0.36899678
## 2 0.8112851 0.4268741 0.28296441
## 3 0.7649489 0.3712170 0.24789061
## 4 0.6869938 0.2985523 0.07938011
## 5 0.7673645 0.2907637 0.17779241
## 6 0.7621370 0.3149414 0.20494156
b1 = b
Nuestra metadata se presenta de la siguiente manera:
Pasando ya al análisis propio de nuestra investigación, se planteará una aproximación visual utilizando el análisis de clusters, utilizando la técnica jerárquica divisiva. Lo primero que debemos hacer es estandarizar nuestra data:
b[,-c(1:3,7)]=scale(b[,-c(1:3,7)])
row.names(b)=b$provincia
Conforme a lo que se plantea en el Anexo 3, se crearán 2 clusters mediante la técnica de clusterización jerárquica divisiva:
set.seed(123)
g.dist = daisy(b[,-c(1:3,7)], metric="gower")
res.diana <- hcut(g.dist, k = 2,hc_func='diana')
b$clustDIV=res.diana$cluster
El comportamiento dentro de cada clustes de nuestras variables es el siguiente:
aggregate(data=b[,-c(1:3)],.~clustDIV,FUN=mean)
## clustDIV IDE IDH cap proporcion vida edu
## 1 1 0.7837510 1.225844 0.8167454 0.3443368 0.6997337 1.1239513
## 2 2 -0.3681255 -0.575775 -0.3836228 0.5170309 -0.3286628 -0.5279165
## ingre
## 1 1.1867669
## 2 -0.5574208
Notamos que existe una marcada diferencia en ambos grupos, el primero tiene indicadores sociales más altos, a la par que un menor uso de servicios alimenticios del Estado. Por el contrario, el segundo grupo se destaca por tener indicadores sociales bastante bajos y una mayor proporcion de usuarios de los servicios del Estado. Esto como análisis primario son podría esta indicando que nuestra hipótesis es correcta, pero para esto es aun necesario comprobarlo a través de una regresión como se hará en las seguientes partes del trabajo.
Ahora, recodificaremos los clusters para tener cada uno con un nombre claro
b$clustDIV = factor(b$clustDIV,
levels = c(1:2),
labels = c("Altos indicadores sociales","Bajos indicadores sociales"))
Podemos ver cuál fue el proceso de clusterización a partir del Dendograma:
fviz_dend(res.diana, cex = 0.4, horiz = T)
## Warning: `guides(<scale> = FALSE)` is deprecated. Please use `guides(<scale> =
## "none")` instead.
Usando el análisis georreferenciado podemos ver si es que existe alguna relación entre la geografía política de nuestro pais y los clusters establecidos, para ello se presenta el siguiente gráfico:
mapa=read_sf('https://github.com/Fabians099/grupal/blob/main/PROVINCIAS.json?raw=true')
mapa=merge(mapa,b, by.x="IDPROV", by.y="ubi", all.x=T)
ggplot(data=mapa) +
geom_sf(aes(fill=clustDIV), color="white",size = 0.7) +
labs(
title = "Análisis por conglomerados",
subtitle = "
Clusterización a partir de indicadores sociales a nivel provincial
",
fill = "") +
scale_fill_manual(values = c("#76EEC6", "#FFEFDB"))+
theme_void()+
theme(plot.title = element_text(size=rel(5)),
plot.subtitle = element_text(size=rel(2.5)),
legend.text=element_text(size=20),
legend.position = "top")
Como se puede notar las provincias cercanas a la costa tienden a tener valores más altos de indicadores sociales (y por ende menor uso de servicios alimenticios del Estado). Además, en este grupo tambien se encuentran en su mayoría las provinicias capitales de departamento del resto del país. Un caso que merecería un análisis de mayor profundidad es el de Madre de Dios, siendo el unico departamento el cual se encuentra dentro del cluster de altos indicadores sociales. Por otra parte, las provincias que más frecuentemente tienen menores indicadores sociales son aquellas de la sierra y selva que además no gozan de ser capitales de provincia. Este análisis nos permite vislumbrar cierta relación entre nuestras variables independientes y la dependiente, pero además la existencia de brechas claras entre las zonas urbanas o de la costa y las zonas ruralesen la selva y sierra del país.
Segun nuestro marco teórico tenemos dos variables latentes: Prioridad Estatal y Calidad de Vida. El anexo 2 nos confirmo la teoría al indicarnos la pertinencia de las 2 variables planteadas.
model = ' prioridad =~ cap + edu + IDE
calidad =~ IDH + ingre + vida'
A través del análisi factorial confirmatorio se comprobará la pertinencia de nuestras variables latentes
CFA = cfa(model, data=b,
std.lv=TRUE,
missing="fiml")
Primero debemos preparar los test:
allParamCFA=parameterEstimates(CFA,standardized = T)
allFitCFA=as.list(fitMeasures(CFA))
Conexión con la latente
allParamCFA[allParamCFA$op=="=~",c("lhs","rhs","pvalue","std.all")]
## lhs rhs pvalue std.all
## 1 prioridad cap 0 0.476
## 2 prioridad edu 0 0.992
## 3 prioridad IDE 0 0.644
## 4 calidad IDH 0 1.065
## 5 calidad ingre 0 0.903
## 6 calidad vida 0 0.581
Notamos que el p.valor de todas las conexiones es menor a 0.05, por lo que podemos coonfirmar la pertinencia de estas.
Chi cuadrado
allFitCFA[c("chisq", "df", "pvalue")] # pvalue>0.05
## $chisq
## [1] 13.59281
##
## $df
## [1] 8
##
## $pvalue
## [1] 0.09301561
Confirmamos esta prueba al ser el p.valor mayor a 0.05
Índice Tucker Lewi
allFitCFA$tli # > 0.90
## [1] 0.9922168
Confirmamos al ser el índice mayor a 0.9
Raíz del error cuadrático
allFitCFA[c('rmsea.ci.lower','rmsea' ,'rmsea.ci.upper')]
## $rmsea.ci.lower
## [1] 0
##
## $rmsea
## [1] 0.06003014
##
## $rmsea.ci.upper
## [1] 0.1132427
Confirmamos al ser esta menor a 0.05
Con las confirmaciones anteriores realizadas procedemos a crear nuestras nuevas variables para proceder ya con la regresión.
scores=as.data.frame(lavPredict(CFA))
b$prioridad=normalize(scores$prioridad,
method = "range",
margin=2, # by column
range = c(0, 100))
b$calidad=normalize(scores$calidad,
method = "range",
margin=2, # by column
range = c(0, 100))
modelo=formula(proporcion~prioridad+calidad)
regresion=lm(modelo,data=b)
summary(regresion,type = "text")
##
## Call:
## lm(formula = modelo, data = b)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.45204 -0.06066 -0.00739 0.05933 0.50939
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.6129864 0.0339079 18.078 <2e-16 ***
## prioridad -0.0047016 0.0004242 -11.083 <2e-16 ***
## calidad 0.0011512 0.0005196 2.215 0.0279 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.1176 on 191 degrees of freedom
## Multiple R-squared: 0.4179, Adjusted R-squared: 0.4118
## F-statistic: 68.56 on 2 and 191 DF, p-value: < 2.2e-16
El resultado nos muestra la pertinencia de ambas variables a la hora de predecir el número de personas que consumen servicios alimenticios proporcionados por el Estado. Tanto la prioridad estatal como la calidad influyen en cuantas personas usan servicios aimenticios del Estado. En este caso existe una relación inversa repecto a la prioridad estatal y una ligera relación con la calidad de vida.
Este trabajo se planteo la siguientes hipótesis:
Podemos concluir que la primera y segunda hipótesis se cumplieron, además de ser una regresión pertinente (revisar anexo 1). Sin embargo si bien existe una relación significativa entre la calidad de vida y nuestra variable dependiente, esta es una relación positiva bastante baja. Se puede interpretar lo anterior como una variable menor a lado de una variable principal como lo es la priorización del Estado. A grandes razgos se confirma nuestra teoría, el mayor número de usuarios de estos servicios se encuentran en aquellas zonas que hasta el momento no han sido priorizadas por el Estado, donde el poco alcance de los programas sociales son usados de forma amplia por la población ante las necesidades de la misma.
Metodológicamente hablando el análisis de clusters nos permite plantear la existencia de otras variables que podrían aportar a la priorización estatal como la cercanía a una capital (Lima Metropolitnana o alguna capital de departamento) o si es una provincia en la costa (región historicamente más conectada y con mayor cantidad de servicios que el resto del Perú). Además, observando el anexo 1 es interesante tambien estudiar los motivos de la dispersión no normal de los residuos dentro de esta regresión. Mediante otros estudios se podría confirmar la existencia de variables que afectan a los datos más altos y bajos o que modifican el tipo de regresión pertinente para este tipo de estudios.
En el siguiente link se encuentra las bases de datos usadas para este trabajo: link
Portocarrero, F., Beltrán, A., Romero, M. E., & Cueva, H. (2000). Gestión pública y políticas alimentarias en el Perú. Universidad del Pacífico. Centro de Investigación. Mendoza, J. L. (2000). ¿Cuál es el rol del Estado? Revista de la Facultad de Ciencias Económicas, 5(15), 45-62. Galán, M. G. N. (2012). La calidad de vida: Análisis multidimensional. Revista de enfermería neurológica, 11(3), 129-137.
Linealidad
plot(regresion, 1)
Confirmamos la linealidad de nuestra regresión al tener una línea cercana a una horizontal en el gráfico anterior
Homocedasticidad
plot(regresion, 3)
bptest(regresion)
##
## studentized Breusch-Pagan test
##
## data: regresion
## BP = 1.2501, df = 2, p-value = 0.5352
Através del gráfico (una línea cercana a la horizontal) y el test de Breuch-Pagan que posee un p.valor mayor a 0.05 podemos confirmar que hablamos de una regresión homocedástica
Normalidad de residuos
plot(regresion, 2)
shapiro.test(regresion$residuals)
##
## Shapiro-Wilk normality test
##
## data: regresion$residuals
## W = 0.96397, p-value = 7.148e-05
El gráfico en este caso nos muestra posible no linealidad de los residuos de nuestra regresión. esto se ve confirmado al tener un p.valor menor a 0.05 en el test de Shapiro-Wilk.
No multicolinealidad
VIF(regresion)
## prioridad calidad
## 1.326454 1.326454
Nuestras variables no presentan multicolinealidad
Valores influyentes
plot(regresion, 5)
NO existen valores que se encuentren demasiado alejados del resto como para representar un problema para nuestra regresión.
Creamos una data solo con nuestras variables a partir de un respaldo llamado “b1”
indepe = b1[,-c(1:3,7,11:13)]
Primero planteamos si es necesario transformar nuestras variables
boxplot(indepe,horizontal=T,las=2,cex.axis=0.3)
boxplot(scale(indepe),horizontal=T,las=2,cex.axis=0.3)
boxplot(log(indepe),horizontal=T,las=2,cex.axis=0.3)
## Warning in bplt(at[i], wid = width[i], stats = z$stats[, i], out = z$out[z$group
## == : Outlier (-Inf) in boxplot 3 is not drawn
Podemos comprobar que la transformación de variables que más nos ayuda a tener todas nuestras variables en un rango cercano entre si es el tipificado de estas. Ahora es necesario saber cuanta es la distancia entre cada varibale y cuantos clusters son necesarios. En el primer gráfico se plantea el clusterizado con la estrategia de partición:
indepe = scale(indepe)
row.names(indepe)=b$provincia
set.seed(123)
g.dist = daisy(indepe, metric="gower")
## Warning in daisy(indepe, metric = "gower"): binary variable(s) 3 treated as
## interval scaled
fviz_nbclust(indepe, pam,diss=g.dist,method = "gap_stat",k.max = 10,verbose = F)
Esta estrategia nos indica que con ella sería prudente crear 8 clusters. Pasamos ahora con el metodo jerárquico aglomerativo:
fviz_nbclust(indepe, hcut,diss=g.dist,method = "gap_stat",k.max = 10,verbose = F,hc_func = "agnes")
Esta estrategia nos indica que con ella sería prudente crear tambien 8 clusters. Por último, pasamos con el metodo jerárquico divisivo:
fviz_nbclust(indepe, hcut,diss=g.dist,method = "gap_stat",k.max = 10,verbose = F,hc_func = "diana")
Se puede notar que adiferencia de los otros métodos este nos indica que serían necesarios preferiblemente 2 clusters. No se hace un análisis de clusters basados en densidad ya que para este caso necesitamos una estratégia que agrupe obligatoriamente a todos los casos estudiados. Por ello, procedemos a crear las variables respectivas para cada tipo de clusterizado.
set.seed(123)
res.pam=pam(g.dist,k = 8,cluster.only = F)
indepe$pam=res.pam$cluster
## Warning in indepe$pam = res.pam$cluster: Coercing LHS to a list
res.agnes <- hcut(g.dist, k = 8,hc_func='agnes')
indepe$agnes=res.agnes$cluster
res.diana <- hcut(g.dist, k = 2,hc_func='diana')
indepe$diana=res.diana$cluster
Con los datos anteriores evaluaremos el coeficiente de silueta de cada uno de los tipos, quedandonos con aquel que tenga la mayor cantidad de valores positivos.
fviz_silhouette(res.pam)
## cluster size ave.sil.width
## 1 1 13 0.45
## 2 2 35 0.21
## 3 3 32 0.18
## 4 4 11 0.24
## 5 5 38 0.18
## 6 6 37 0.45
## 7 7 16 0.22
## 8 8 12 0.43
fviz_silhouette(res.agnes)
## cluster size ave.sil.width
## 1 1 12 0.47
## 2 2 36 0.26
## 3 3 8 0.30
## 4 4 40 0.30
## 5 5 40 0.41
## 6 6 38 0.04
## 7 7 13 0.38
## 8 8 7 0.41
fviz_silhouette(res.diana)
## cluster size ave.sil.width
## 1 1 62 0.39
## 2 2 132 0.58
Como se puede ver el método divisivo es el que menos casos mal clusterizados posee, siendo solamente uno el que se encuentra en esta situación. Por ello tomaremos este como el más pertinente para nuestro trabajo.
Primero crearemos la matrix de correlación (sin evaluar significancia) y su visualizacipon a través de un mapa de calor con la intención de establecer si hay posibilidad de un análisis factorial
solo = b[,-c(1:3,7,11:13)]
corMatrix=polycor::hetcor(solo)$correlations
ggcorrplot(corMatrix)
Al ver la correlación existente entre nuestras variables hay esperanza de un buen análisis factorial. Pasaremos ahora a verificar si los datos permiten factorizar:
psych::KMO(corMatrix)
## Kaiser-Meyer-Olkin factor adequacy
## Call: psych::KMO(r = corMatrix)
## Overall MSA = 0.54
## MSA for each item =
## IDE IDH cap vida edu ingre
## 0.98 0.52 0.97 0.34 0.51 0.50
Confirmado lo anterior, confirmamos tambien que la matriz no es una matriz singular
cortest.bartlett(corMatrix,n=nrow(solo))$p.value>0.05
## [1] FALSE
Confirmado lo anterior es necesario estableces nuestras pruebas. Primero confirmamos que nuestra matriz no es una matriz de identidad
is.singular.matrix(corMatrix)
## [1] FALSE
Ahora, determinamos cuantos factores o variables latentes son pertinentes para nuestra data
fa.parallel(solo,fm = 'ML', fa = 'fa',correct = T)
## Parallel analysis suggests that the number of factors = 2 and the number of components = NA
Se sugiere 2, de acuerdo a lo establecido en la teoría. Trabajaremos con estos.
resfa <- fa(solo,
nfactors = 2,
cor = 'mixed',
rotate = "varimax",
fm="minres")
## Warning in fa.stats(r = r, f = f, phi = phi, n.obs = n.obs, np.obs = np.obs, :
## The estimated weights for the factor scores are probably incorrect. Try a
## different factor score estimation method.
## Warning in fac(r = r, nfactors = nfactors, n.obs = n.obs, rotate = rotate, : An
## ultra-Heywood case was detected. Examine the results carefully
print(resfa$loadings, cutoff = 0.15)
##
## Loadings:
## MR1 MR2
## IDE 0.545 0.358
## IDH 0.589 0.826
## cap 0.900 0.185
## vida 0.594
## edu 0.753 0.522
## ingre 0.536 0.739
##
## MR1 MR2
## SS loadings 2.324 2.015
## Proportion Var 0.387 0.336
## Cumulative Var 0.387 0.723
El resultado visual sería el siguiente:
fa.diagram(resfa)
Como se puede ver las variables establecidad en el análisis factorial se corresponden con lo esperado por nuestra teoría por lo que podemos aplicar este a nuestro trabajo. Ahora, es perinente ver que variables aportaron más a los factores y cuales contribuyen a más de un factor:
sort(resfa$communality)
## vida IDE ingre edu cap IDH
## 0.3675603 0.4253536 0.8327264 0.8391110 0.8444357 1.0296919
sort(resfa$complexity)
## cap vida IDE edu IDH ingre
## 1.084622 1.085590 1.728925 1.780048 1.808802 1.823975