El Análisis Factorial es un método de interdependencia, es dirigida por las variables y puede trabajarse a nivel exploratorio y/o confirmatorio. Se le considera además como una técnica de reducción de dimensionalidad.
Este método trata de explicar las relaciones de un conjunto grande de
variables cuantitativas observables: x1, x2, x3,..., xp,
mediante un espacio de pequeña dimensión denominado Espacio
Factorial, el cual está formado por un número reducido de
variables no observables denominado factores o variables latentes no
medibles: f1, f2, ... , fk, con k < p y que
son de interés para el investigador.
El espacio factorial permitirá analizar las similitudes entre los elementos de la muestra respecto a su comportamiento en el conjunto de variables.
La aplicación del Análisis Factorial se basa en el supuesto de la existencia de pocos factores que hacen posible la correlación entre las variables cuantitativas observadas.
Para el siguiente análisis emplearemos los Índices de Progreso Social Mundial 2021, que corresponde a los indicadores de oportunidades de 150 países, con la siguiente estructura:
Derechos Personales
| Indicador | DERECHOS PERSONALES |
|---|---|
| \(X_{1}\) | Acceso a la justicia |
| \(X_{2}\) | Libertad de expresión |
| \(X_{3}\) | Libertad de religión |
| \(X_{4}\) | Derecho de propiedad de las mujeres |
| \(X_{5}\) | Derechos políticos |
| \(X_{6}\) | Porcentaje de jóvenes en el parlamento |
Libertades Personales y de Elección
| Indicador | LIBERTADES PERSONALES Y DE ELECCIÓN |
|---|---|
| \(X_{7}\) | Percepción de los jóvenes sobre la corrupción |
| \(X_{8}\) | Libertad de los jóvenes sobre las opciones de vida |
| \(X_{9}\) | Jóvenes sin empleo y educación |
| \(X_{10}\) | Matrimonio precoz( % de mujeres) |
| \(X_{11}\) | Demanda satisfecha de anticoncepción (% de mujer) |
| \(X_{12}\) | Corrupción (%) |
Inclusión
| Indicador | INCLUSIÓN |
|---|---|
| \(X_{13}\) | Igualdad de poder político por género |
| \(X_{14}\) | Aceptación juvenil de gays y lesbianas |
| \(X_{15}\) | Aceptación juvenil de inmigrantes |
| \(X_{16}\) | Red de seguridad de la comunidad juvenil |
| \(X_{17}\) | Jóvenes satisfechos con las oportunidades hacer amigos (proporción) |
| \(X_{18}\) | Discriminación y violencia contra minorías |
Acceso a la Educación Superior
| Indicador | ACCESO A LA EDUCACIÓN SUPERIOR |
|---|---|
| \(X_{19}\) | Documentos citables |
| \(X_{20}\) | Proporción de Mujeres con educación avanzada (25-29 años) |
| \(X_{21}\) | Años de educación terciaria esperada |
| \(X_{22}\) | Universidades ponderadas por calidad |
Obtenermos los datos IPS 2021
# install.packages("openxlsx")
library(openxlsx)
data_url <- 'https://github.com/ccsalazard/biostatistics/raw/master/IPS2021_OPORTUNIDADES.xlsx'
data_opportunity <- read.xlsx(data_url)
head(data_opportunity)
## PAÍS X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13
## 1 Afghanistan 0.20 0.68 1.87 3.86 13 5.65 0.87 0.37 41.22 16.95 45.7 19 1.30
## 2 Albania 0.91 0.69 3.71 3.99 27 4.10 0.81 0.73 25.82 5.97 9.3 36 2.12
## 3 Algeria 0.65 0.45 1.59 4.14 10 1.09 NA 0.36 20.61 4.69 75.8 36 1.61
## 4 Angola 0.53 0.59 2.72 3.00 10 0.56 NA 0.34 6.88 17.02 34.3 27 2.01
## 5 Argentina 0.77 0.97 3.90 4.86 35 1.95 0.81 0.79 19.23 14.33 83.6 42 2.34
## 6 Armenia 0.77 0.85 3.22 4.84 22 12.12 0.41 0.85 31.85 4.01 43.1 49 1.61
## X14 X15 X16 X17 X18 X19 X20 X21 X22
## 1 0.03 0.30 0.46 0.50 7.50 0.01 0.13 0.48 2.4
## 2 0.08 0.55 0.83 0.79 4.40 0.17 0.53 2.78 4.4
## 3 NA 0.34 0.81 0.50 7.47 0.19 0.55 2.57 27.8
## 4 0.15 0.58 0.75 NA 7.80 0.00 0.27 0.50 1.8
## 5 0.68 0.74 0.96 0.81 4.10 0.31 0.73 4.50 60.0
## 6 0.06 0.66 0.86 0.84 5.00 0.44 0.84 2.73 5.2
Convertimos en matriz
X <- as.matrix(na.omit(data_opportunity[, 2:23]))
head(X)
## X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15
## 1 0.20 0.68 1.87 3.86 13 5.65 0.87 0.37 41.22 16.95 45.7 19 1.30 0.03 0.30
## 2 0.91 0.69 3.71 3.99 27 4.10 0.81 0.73 25.82 5.97 9.3 36 2.12 0.08 0.55
## 5 0.77 0.97 3.90 4.86 35 1.95 0.81 0.79 19.23 14.33 83.6 42 2.34 0.68 0.74
## 6 0.77 0.85 3.22 4.84 22 12.12 0.41 0.85 31.85 4.01 43.1 49 1.61 0.06 0.66
## 7 0.97 0.94 3.88 4.73 40 0.00 0.40 0.87 8.36 2.26 85.0 77 2.46 0.89 0.87
## 8 0.96 0.95 3.22 4.66 37 7.65 0.42 0.92 7.11 2.23 88.0 76 2.81 0.85 0.80
## X16 X17 X18 X19 X20 X21 X22
## 1 0.46 0.50 7.5 0.01 0.13 0.48 2.4
## 2 0.83 0.79 4.4 0.17 0.53 2.78 4.4
## 5 0.96 0.81 4.1 0.31 0.73 4.50 60.0
## 6 0.86 0.84 5.0 0.44 0.84 2.73 5.2
## 7 0.98 0.86 3.4 3.96 0.88 5.37 136.0
## 8 0.96 0.85 4.2 2.86 0.86 3.91 53.0
dim(X)
## [1] 98 22
Configuración de las dimensiones
Derechos Personales: Creamos la dimensión X1
X1 <- X[,1:6]
colnames(X1) <- c("AJ","LE","LR","DPM","DP","PJP")
head(X1)
## AJ LE LR DPM DP PJP
## 1 0.20 0.68 1.87 3.86 13 5.65
## 2 0.91 0.69 3.71 3.99 27 4.10
## 5 0.77 0.97 3.90 4.86 35 1.95
## 6 0.77 0.85 3.22 4.84 22 12.12
## 7 0.97 0.94 3.88 4.73 40 0.00
## 8 0.96 0.95 3.22 4.66 37 7.65
Creamos el tamaño de la dimensión X1
n1 <- dim(X1)
n1
## [1] 98 6
Libertades Personales y de Elección: Creamos la dimensión X2
X2 <- X[, 7:12]
colnames(X2) <- c("PJC","LJOV","JSEE","MP","DSA","C")
head(X2)
## PJC LJOV JSEE MP DSA C
## 1 0.87 0.37 41.22 16.95 45.7 19
## 2 0.81 0.73 25.82 5.97 9.3 36
## 5 0.81 0.79 19.23 14.33 83.6 42
## 6 0.41 0.85 31.85 4.01 43.1 49
## 7 0.40 0.87 8.36 2.26 85.0 77
## 8 0.42 0.92 7.11 2.23 88.0 76
Creamos el tamaño de la dimensión X2
n2 <- dim(X2)
n2
## [1] 98 6
Inclusión: Creamos la dimensión X3
X3 <- X[, 13:18]
colnames(X3) <- c("IPPG","AJGL","AJI","RSCJ","JSOA","DVCM")
head(X3)
## IPPG AJGL AJI RSCJ JSOA DVCM
## 1 1.30 0.03 0.30 0.46 0.50 7.5
## 2 2.12 0.08 0.55 0.83 0.79 4.4
## 5 2.34 0.68 0.74 0.96 0.81 4.1
## 6 1.61 0.06 0.66 0.86 0.84 5.0
## 7 2.46 0.89 0.87 0.98 0.86 3.4
## 8 2.81 0.85 0.80 0.96 0.85 4.2
Creamos el tamaño de la dimensión X3
n3 <- dim(X3)
n3
## [1] 98 6
Acceso a la Educación Superior: Creamos la dimensión X4
X4 <- X[, 19:22]
colnames(X4) <- c("DC","PMEA","AETE","UPC")
head(X4)
## DC PMEA AETE UPC
## 1 0.01 0.13 0.48 2.4
## 2 0.17 0.53 2.78 4.4
## 5 0.31 0.73 4.50 60.0
## 6 0.44 0.84 2.73 5.2
## 7 3.96 0.88 5.37 136.0
## 8 2.86 0.86 3.91 53.0
Creamos el tamaño de la dimensión X4
n4 <- dim(X4)
n4
## [1] 98 4
Como paso previo para aplicar el análisis factorial, se requiere preparar los datos, para comprobar:
# install.packages("reshape2")
# install.packages("corrplot")
# install.packages("GGally")
# install.packages("grid")
# install.packages("REdaS")
# install.packages("psych")
# install.packages("factoextra")
# install.packages("FactoMineR")
# install.packages("MVN")
# install.packages("scales")
library(reshape2)
library(ggplot2)
library(corrplot)
## corrplot 0.92 loaded
library(GGally)
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
library(grid)
library(REdaS)
library(psych)
##
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
##
## %+%, alpha
library(factoextra)
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
library(FactoMineR)
library(MVN)
library(scales)
##
## Attaching package: 'scales'
## The following objects are masked from 'package:psych':
##
## alpha, rescale
Resumen general sobre las variables de estudio
summary(X1)
## AJ LE LR DPM
## Min. :0.2000 Min. :0.1100 Min. :1.100 Min. :1.440
## 1st Qu.:0.5600 1st Qu.:0.5725 1st Qu.:3.160 1st Qu.:4.045
## Median :0.7650 Median :0.7800 Median :3.525 Median :4.515
## Mean :0.7186 Mean :0.7221 Mean :3.333 Mean :4.289
## 3rd Qu.:0.9300 3rd Qu.:0.9300 3rd Qu.:3.808 3rd Qu.:4.820
## Max. :1.0000 Max. :0.9900 Max. :3.950 Max. :4.960
## DP PJP
## Min. : 2.00 Min. : 0.000
## 1st Qu.:16.00 1st Qu.: 0.700
## Median :28.50 Median : 2.450
## Mean :25.89 Mean : 3.088
## 3rd Qu.:37.00 3rd Qu.: 4.688
## Max. :40.00 Max. :13.610
datos1 <- data.frame(X1)
Usamos la función melt() del paquete
reshape2 en R para convertir un marco de datos de formato
ancho a formato largo.
dat1 <- melt(datos1)
## No id variables; using all as measure variables
head(dat1)
## variable value
## 1 AJ 0.20
## 2 AJ 0.91
## 3 AJ 0.77
## 4 AJ 0.77
## 5 AJ 0.97
## 6 AJ 0.96
Crear gráficos de cajas o boxplot para conocer rápidamente tanto la dispersión, como la asimetría, el centro y los datos atípicos de la variable de estudio.
ggplot(dat1, aes(x = variable, y = value, fill = variable)) + coord_flip() +
geom_boxplot(outlier.colour="red") + labs(fill = "Índices") +
labs(y = "Valores de los Indices", x = "Índices", title =" Índices de Derechos Personales ")
summary(X2)
## PJC LJOV JSEE MP
## Min. :0.0400 Min. :0.3700 Min. : 4.13 Min. : 0.310
## 1st Qu.:0.5025 1st Qu.:0.7225 1st Qu.:10.36 1st Qu.: 2.370
## Median :0.6700 Median :0.8100 Median :16.54 Median : 5.655
## Mean :0.6143 Mean :0.7881 Mean :17.24 Mean :10.037
## 3rd Qu.:0.7600 3rd Qu.:0.8700 3rd Qu.:23.73 3rd Qu.:15.238
## Max. :0.9300 Max. :0.9900 Max. :41.22 Max. :55.480
## DSA C
## Min. : 9.30 Min. :18.00
## 1st Qu.:60.10 1st Qu.:33.00
## Median :74.80 Median :43.50
## Mean :69.81 Mean :47.78
## 3rd Qu.:83.47 3rd Qu.:60.00
## Max. :91.00 Max. :88.00
datos2 <- data.frame(X2)
Usamos la función melt() del paquete
reshape2 en R para convertir un marco de datos de formato
ancho a formato largo.
dat2 <- melt(datos2)
## No id variables; using all as measure variables
head(dat2)
## variable value
## 1 PJC 0.87
## 2 PJC 0.81
## 3 PJC 0.81
## 4 PJC 0.41
## 5 PJC 0.40
## 6 PJC 0.42
Crear gráficos de cajas o boxplot para conocer rápidamente tanto la dispersión, como la asimetría, el centro y los datos atípicos de la variable de estudio.
ggplot(dat2, aes(x = variable, y = value, fill = variable)) + coord_flip() +
geom_boxplot(outlier.colour="red") + labs(fill = "Índices") +
labs(y = "Valores de los Indices", x = "Índices", title = "Libertades Personales y de Elección")
summary(X3)
## IPPG AJGL AJI RSCJ
## Min. :0.760 Min. :0.00 Min. :0.1500 Min. :0.4600
## 1st Qu.:1.752 1st Qu.:0.15 1st Qu.:0.4725 1st Qu.:0.8300
## Median :2.135 Median :0.36 Median :0.6200 Median :0.9200
## Mean :2.153 Mean :0.42 Mean :0.6108 Mean :0.8792
## 3rd Qu.:2.545 3rd Qu.:0.71 3rd Qu.:0.7600 3rd Qu.:0.9600
## Max. :3.500 Max. :0.96 Max. :0.9400 Max. :1.0000
## JSOA DVCM
## Min. :0.5000 Min. : 0.700
## 1st Qu.:0.7700 1st Qu.: 4.025
## Median :0.8250 Median : 6.100
## Mean :0.8134 Mean : 6.009
## 3rd Qu.:0.8700 3rd Qu.: 8.280
## Max. :0.9700 Max. :10.000
datos3 <- data.frame(X3)
Usamos la función melt() del paquete
reshape2 en R para convertir un marco de datos de formato
ancho a formato largo.
dat3 <- melt(datos3)
## No id variables; using all as measure variables
head(dat3)
## variable value
## 1 IPPG 1.30
## 2 IPPG 2.12
## 3 IPPG 2.34
## 4 IPPG 1.61
## 5 IPPG 2.46
## 6 IPPG 2.81
Crear gráficos de cajas o boxplot para conocer rápidamente tanto la dispersión, como la asimetría, el centro y los datos atípicos de la variable de estudio.
ggplot(dat3, aes(x = variable, y = value, fill = variable)) + coord_flip() +
geom_boxplot(outlier.colour="red") + labs(fill = "Índices") +
labs(y = "Valores de los Indices", x = "Índices", title = "Inclusión")
summary(X4)
## DC PMEA AETE UPC
## Min. :0.0000 Min. :0.0200 Min. :0.1600 Min. : 0.00
## 1st Qu.:0.0625 1st Qu.:0.3550 1st Qu.:0.9925 1st Qu.: 3.80
## Median :0.3300 Median :0.6750 Median :2.6850 Median : 15.10
## Mean :1.0445 Mean :0.5967 Mean :2.4015 Mean : 52.78
## 3rd Qu.:1.7000 3rd Qu.:0.8800 3rd Qu.:3.3425 3rd Qu.: 51.30
## Max. :5.2000 Max. :0.9500 Max. :6.1900 Max. :1072.60
datos4 <- data.frame(X4)
Usamos la función melt() del paquete
reshape2 en R para convertir un marco de datos de formato
ancho a formato largo.
dat4 <- melt(datos4)
## No id variables; using all as measure variables
head(dat4)
## variable value
## 1 DC 0.01
## 2 DC 0.17
## 3 DC 0.31
## 4 DC 0.44
## 5 DC 3.96
## 6 DC 2.86
Crear gráficos de cajas o boxplot para conocer rápidamente tanto la dispersión, como la asimetría, el centro y los datos atípicos de la variable de estudio.
DC: Documentos citables
PMEA: Proporción de Mujeres con educación avanzada (25-29 años)
AETE: Años de educación terciaria esperada
UPC: Universidades ponderadas por calidad
ggplot(dat4, aes(x = variable, y = value, fill = variable)) + coord_flip() +
geom_boxplot(outlier.colour="red") + labs(fill = "Índices") +
labs(y = "Valores de los Indices", x = "Índices", title = "Acceso a la Educación Superior")
Entre las variables y su nivel de significación, la mayoría de las correlaciones debe superar el 0.30, en caso contrario debería reconsiderarse utilizar el análisis factorial.
Linealidad y distribución de las variables
ggpairs(datos1)
Calculamos el coeficiente de correlación de Pearson
R1 <- cor(X1)
corrplot.mixed(R1, upper = "ellipse")
Calculamos el coeficiente de correlación de Spearman
R1s <- cor(X1, method = "spearman")
corrplot.mixed(R1s, upper = "ellipse")
Linealidad y distribución de las variables
ggpairs(datos2)
Calculamos el coeficiente de correlación de Pearson
R2 <- cor(X2)
corrplot.mixed(R2, upper = "ellipse")
Calculamos el coeficiente de correlación de Spearman
R2s <- cor(X2, method = "spearman")
corrplot.mixed(R2s,upper = "ellipse")
Linealidad y distribución de las variables
ggpairs(datos3)
Calculamos el coeficiente de correlación de Pearson
R3 <- cor(X3)
corrplot.mixed(R3, upper = "ellipse")
Calculamos el coeficiente de correlación de Spearman
R3s <- cor(X3, method = "spearman")
corrplot.mixed(R3s,upper = "ellipse")
Linealidad y distribución de las variables
ggpairs(datos4)
Calculamos el coeficiente de correlación de Pearson
R4 <- cor(X4)
corrplot.mixed(R4, upper = "ellipse")
Del resultado anterior vemos que existe una correlación de 0.64 entre PMA y DC, una correlación de 0.63 entre AETE y DC, y una correlación de 0.78 entre AETE y PMEA. Esto podría dar cuenta que, por ejemplo, a mayor Proporción de Mujeres con educación avanzada (25-29 años) tiende a haber una mayor proporción de Documentos Citables; por otro lado, los resultados también podrían indicar que a mayor cantidad de Años de educación terciaria esperada habría una mayor proporción de Documentos Citables; y finalmente, a mayor proporción de Años de educación terciaria esperada la proporción de Mujeres con educación avanzada (25-29 años) aumenta.
Calculamos el coeficiente de correlación de Spearman
R4s <- cor(X4, method = "spearman")
corrplot.mixed(R4s,upper = "ellipse")
Del resultado anterior vemos que existe una correlación similar a los encontrados por el Método de Pearson entre las variables Años de educación terciaria esperada (AETE), Proporción de Mujeres con educación avanzada (25-29 años) (PMEA) y Documentos citables (DC).
Se cambia de signo a los coeficiente de correlación parcial, nos interesa que la mayoría de las correlaciones anti-imagen sean pequeños para aplicar el análisis factorial, lo que indicara alta colinealidad entre pares de variable.
IR1 <- solve(R1)
A1 <- matrix(1,nrow(IR1),ncol(IR1))
for(i in 1:nrow(IR1)){
for(j in 1:ncol(IR1)){
A1[i, j] <- IR1[i, j]/sqrt(IR1[i, i] * IR1[j, j])
A1[j, i] = A1[i, j]
}
}
colnames(A1) <- colnames(X1)
rownames(A1) <- colnames(X1)
A1
## AJ LE LR DPM DP PJP
## AJ 1.00000000 -0.26900920 0.01760096 -0.15116977 -0.37697272 0.07534460
## LE -0.26900920 1.00000000 -0.36530928 0.13230509 -0.49617852 -0.09748042
## LR 0.01760096 -0.36530928 1.00000000 -0.05033549 -0.07677209 0.05117180
## DPM -0.15116977 0.13230509 -0.05033549 1.00000000 -0.36288355 -0.19967490
## DP -0.37697272 -0.49617852 -0.07677209 -0.36288355 1.00000000 -0.05668108
## PJP 0.07534460 -0.09748042 0.05117180 -0.19967490 -0.05668108 1.00000000
IR2 <- solve(R2)
A2 <- matrix(1, nrow(IR2), ncol(IR2))
for(i in 1:nrow(IR2)){
for(j in 1:ncol(IR2)){
A2[i, j] <- IR2[i, j]/sqrt(IR2[i, i] * IR2[j, j])
A2[j, i] = A2[i, j]
}
}
colnames(A2) <- colnames(X2)
rownames(A2) <- colnames(X2)
A2
## PJC LJOV JSEE MP DSA C
## PJC 1.0000000 0.19634020 -0.24222923 0.23411386 -0.26165698 0.50878127
## LJOV 0.1963402 1.00000000 0.07518954 -0.00591396 -0.24442681 -0.08985465
## JSEE -0.2422292 0.07518954 1.00000000 -0.20768709 0.13268218 0.10034408
## MP 0.2341139 -0.00591396 -0.20768709 1.00000000 0.03599376 0.46233073
## DSA -0.2616570 -0.24442681 0.13268218 0.03599376 1.00000000 -0.41086598
## C 0.5087813 -0.08985465 0.10034408 0.46233073 -0.41086598 1.00000000
IR3 <- solve(R3)
A3 <- matrix(1, nrow(IR3), ncol(IR3))
for(i in 1:nrow(IR3)){
for(j in 1:ncol(IR3)){
A3[i, j] <- IR3[i, j]/sqrt(IR3[i, i] * IR3[j, j])
A3[j, i] = A3[i, j]
}
}
colnames(A3) <- colnames(X3)
rownames(A3) <- colnames(X3)
A3
## IPPG AJGL AJI RSCJ JSOA DVCM
## IPPG 1.00000000 -0.2983586 -0.01486075 -0.1139955 -0.1779516 0.2131374
## AJGL -0.29835864 1.0000000 -0.56223286 -0.3299122 -0.0901057 0.1479199
## AJI -0.01486075 -0.5622329 1.00000000 0.3172765 0.0118484 0.1613991
## RSCJ -0.11399549 -0.3299122 0.31727652 1.0000000 -0.3897819 0.2657570
## JSOA -0.17795162 -0.0901057 0.01184840 -0.3897819 1.0000000 -0.2111630
## DVCM 0.21313741 0.1479199 0.16139906 0.2657570 -0.2111630 1.0000000
IR4 <- solve(R4)
A4 <- matrix(1, nrow(IR4), ncol(IR4))
for(i in 1:nrow(IR4)){
for(j in 1:ncol(IR4)){
A4[i, j] <- IR4[i, j]/sqrt(IR4[i, i] * IR4[j, j])
A4[j, i] = A4[i, j]
}
}
colnames(A4) <- colnames(X4)
rownames(A4) <- colnames(X4)
A4
## DC PMEA AETE UPC
## DC 1.00000000 -0.30016346 -0.2675147 -0.02492536
## PMEA -0.30016346 1.00000000 -0.6227142 -0.02952874
## AETE -0.26751468 -0.62271421 1.0000000 -0.13592316
## UPC -0.02492536 -0.02952874 -0.1359232 1.00000000
Podemos observar la matriz de covarianzas anti-imagen y la matriz de correlaciones anti-imagen. La matriz de covarianzas anti-imagen contiene los negativos de las covarianzas parciales y la matriz de correlaciones anti-imagen contiene los coeficientes de correlación parcial cambiados de signo (la correlación entre dos variables se parcializa teniendo en cuenta el resto de variables incluídas en el análisis). En la diagonal de la matriz de correlaciones anti-imagen se encuentran las medidas de adecuación muestral para cada variable.
Si el modelo factorial elegido es adecuado para explicar los datos, los elementos de la diagonal de la matriz de correlaciones anti-imagen deben tener un valor próximo a 1 y el resto de elementos deben ser pequeños.
Determinante de la matriz de correlación.
dt1 <- det(R1)
dt1
## [1] 0.03043399
Se observa que el determinante es pequeño, cercano a cero; por lo tanto, indica la existencia de variables altamente correlacionadas.
Coeficiente de dependencia efectiva
DE1 <- (dt1)^(1/(n1[2]-1))
CDE1 <- 1 - DE1
CDE1
## [1] 0.5026389
Cálculo del KMO y Medida de adecuación de la muestra
KMOS(X1)
##
## Kaiser-Meyer-Olkin Statistics
##
## Call: KMOS(x = X1)
##
## Measures of Sampling Adequacy (MSA):
## AJ LE LR DPM DP PJP
## 0.8817249 0.8064556 0.8920792 0.8543324 0.8034868 0.8494615
##
## KMO-Criterion: 0.8399341
0.80 <= KMO < 0.90 bueno.
Determinante de la matriz de correlación.
dt2 <- det(R2)
dt2
## [1] 0.1132157
Se observa que el determinante es pequeño, cercano a cero; por lo tanto, indica la existencia de variables altamente correlacionadas.
Coeficiente de dependencia efectiva
DE2 <- (dt2)^(1/(n2[2]-1))
CDE2 <- 1 - DE2
CDE2
## [1] 0.3531831
Cálculo del KMO y Medida de adecuación de la muestra
KMOS(X2)
##
## Kaiser-Meyer-Olkin Statistics
##
## Call: KMOS(x = X2)
##
## Measures of Sampling Adequacy (MSA):
## PJC LJOV JSEE MP DSA C
## 0.6151051 0.8692437 0.8768455 0.7333604 0.7409399 0.7011450
##
## KMO-Criterion: 0.7416631
0.70 <= KMO < 0.80 aceptable.
Determinante de la matriz de correlación.
dt3 <- det(R3)
dt3
## [1] 0.1083686
Coeficiente de dependencia efectiva
DE3 <- (dt3)^(1/(n3[2]-1))
CDE3 <- 1 - DE3
CDE3
## [1] 0.3588189
Cálculo del KMO y Medida de adecuación de la muestra
KMOS(X3)
##
## Kaiser-Meyer-Olkin Statistics
##
## Call: KMOS(x = X3)
##
## Measures of Sampling Adequacy (MSA):
## IPPG AJGL AJI RSCJ JSOA DVCM
## 0.8578768 0.7199261 0.5948491 0.6801955 0.7035429 0.7981848
##
## KMO-Criterion: 0.7265435
0.70 <= KMO < 0.80 aceptable.
Determinante de la matriz de correlación.
dt4 <- det(R4)
dt4
## [1] 0.1987143
Se observa que el determinante es pequeño, cercano a cero; por lo tanto, indica la existencia de variables altamente correlacionadas.
Coeficiente de dependencia efectiva
DE4 <- (dt4)^(1/(n4[2]-1))
CDE4 <- 1 - DE4
CDE4
## [1] 0.4164523
Cálculo del KMO y Medida de adecuación de la muestra
KMOS(X4)
##
## Kaiser-Meyer-Olkin Statistics
##
## Call: KMOS(x = X4)
##
## Measures of Sampling Adequacy (MSA):
## DC PMEA AETE UPC
## 0.8381889 0.6909867 0.6931667 0.8966221
##
## KMO-Criterion: 0.7353199
0.70 <= KMO < 0.80 aceptable.
El coeficiente de correlación múltiple para cada variable, es un indicador del grado de asociación; las variables con bajo coeficiente de correlación múltiple se podrían eliminar del análisis.
El coeficiente de correlación múltiple coincide con las comunalidades iniciales, cuando el método de extracción de factores no es el de componentes principales.
S1 <- cov(X1)
Diagt1 <- diag(S1)
DiagInv1 <- diag(solve(S1))
RMult1 <- diag((diag(rep(1, n1[2])) - solve(diag(diag(Diagt1%*%t(DiagInv1)))))^(1/2))
RMult1
## [1] 0.8144124 0.8657637 0.6584719 0.6785976 0.8896400 0.3615318
Evalución de la Normalidad Multivariada y Detección de Datos Atípicos Multivariados
mvn(data = X1, mvnTest = "mardia", covariance = TRUE)
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 229.961539121774 6.01384299376651e-23 NO
## 2 Mardia Kurtosis 5.88792298460581 3.91079280070983e-09 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling AJ 3.0325 <0.001 NO
## 2 Anderson-Darling LE 3.3791 <0.001 NO
## 3 Anderson-Darling LR 5.2770 <0.001 NO
## 4 Anderson-Darling DPM 5.1370 <0.001 NO
## 5 Anderson-Darling DP 3.0819 <0.001 NO
## 6 Anderson-Darling PJP 2.8794 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## AJ 98 0.7185714 0.2365255 0.765 0.20 1.00 0.5600 0.9300 -0.6755157
## LE 98 0.7221429 0.2433624 0.780 0.11 0.99 0.5725 0.9300 -0.8788621
## LR 98 3.3327551 0.6161801 3.525 1.10 3.95 3.1600 3.8075 -1.4663414
## DPM 98 4.2894898 0.6902597 4.515 1.44 4.96 4.0450 4.8200 -1.6149385
## DP 98 25.8877551 12.1212795 28.500 2.00 40.00 16.0000 37.0000 -0.5670973
## PJP 98 3.0876531 2.9767511 2.450 0.00 13.61 0.7000 4.6875 1.2723584
## Kurtosis
## AJ -0.7388562
## LE -0.2259341
## LR 1.7465115
## DPM 2.8196416
## DP -1.0078740
## PJP 1.6782827
mvn(data = X1, mvnTest = "mardia", multivariateOutlierMethod = "quan")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 229.961539121774 6.01384299376651e-23 NO
## 2 Mardia Kurtosis 5.88792298460581 3.91079280070983e-09 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling AJ 3.0325 <0.001 NO
## 2 Anderson-Darling LE 3.3791 <0.001 NO
## 3 Anderson-Darling LR 5.2770 <0.001 NO
## 4 Anderson-Darling DPM 5.1370 <0.001 NO
## 5 Anderson-Darling DP 3.0819 <0.001 NO
## 6 Anderson-Darling PJP 2.8794 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## AJ 98 0.7185714 0.2365255 0.765 0.20 1.00 0.5600 0.9300 -0.6755157
## LE 98 0.7221429 0.2433624 0.780 0.11 0.99 0.5725 0.9300 -0.8788621
## LR 98 3.3327551 0.6161801 3.525 1.10 3.95 3.1600 3.8075 -1.4663414
## DPM 98 4.2894898 0.6902597 4.515 1.44 4.96 4.0450 4.8200 -1.6149385
## DP 98 25.8877551 12.1212795 28.500 2.00 40.00 16.0000 37.0000 -0.5670973
## PJP 98 3.0876531 2.9767511 2.450 0.00 13.61 0.7000 4.6875 1.2723584
## Kurtosis
## AJ -0.7388562
## LE -0.2259341
## LR 1.7465115
## DPM 2.8196416
## DP -1.0078740
## PJP 1.6782827
mvn(data = X1, mvnTest="mardia", multivariateOutlierMethod = "adj")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 229.961539121774 6.01384299376651e-23 NO
## 2 Mardia Kurtosis 5.88792298460581 3.91079280070983e-09 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling AJ 3.0325 <0.001 NO
## 2 Anderson-Darling LE 3.3791 <0.001 NO
## 3 Anderson-Darling LR 5.2770 <0.001 NO
## 4 Anderson-Darling DPM 5.1370 <0.001 NO
## 5 Anderson-Darling DP 3.0819 <0.001 NO
## 6 Anderson-Darling PJP 2.8794 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## AJ 98 0.7185714 0.2365255 0.765 0.20 1.00 0.5600 0.9300 -0.6755157
## LE 98 0.7221429 0.2433624 0.780 0.11 0.99 0.5725 0.9300 -0.8788621
## LR 98 3.3327551 0.6161801 3.525 1.10 3.95 3.1600 3.8075 -1.4663414
## DPM 98 4.2894898 0.6902597 4.515 1.44 4.96 4.0450 4.8200 -1.6149385
## DP 98 25.8877551 12.1212795 28.500 2.00 40.00 16.0000 37.0000 -0.5670973
## PJP 98 3.0876531 2.9767511 2.450 0.00 13.61 0.7000 4.6875 1.2723584
## Kurtosis
## AJ -0.7388562
## LE -0.2259341
## LR 1.7465115
## DPM 2.8196416
## DP -1.0078740
## PJP 1.6782827
Prueba de Esfericidad de Barlet
bart_spher(X1)
## Bartlett's Test of Sphericity
##
## Call: bart_spher(x = X1)
##
## X2 = 328.848
## df = 15
## p-value < 2.22e-16
La hipótesis nula significa que las correlaciones entre las variables son todas igual a cero (en una matriz de identidad el valor del determinante es 1). La hipótesis alternativa asume que la matriz de correlaciones es distinta de la matriz identidad o, es decir, que el determinante de la matriz de correlaciones es significativamente distinto de 1.
En el resultado obtenido, observamos que el
p-value < 2.22e-16; por lo tanto, se rechaza la
hipótesis nula y tendría sentido aplicar el AF.
S2 <- cov(X2)
Diagt2 <- diag(S2)
DiagInv2 <- diag(solve(S2))
RMult2 <- diag((diag(rep(1, n2[2])) - solve(diag(diag(Diagt2%*%t(DiagInv2)))))^(1/2))
RMult2
## [1] 0.6726835 0.5390062 0.6061382 0.6523009 0.6537971 0.8246887
Evalución de la Normalidad Multivariada y Detección de Datos Atípicos Multivariados
mvn(data = X2, mvnTest = "mardia", covariance = TRUE)
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 201.691674378005 2.50180421979121e-18 NO
## 2 Mardia Kurtosis 3.10927110586497 0.00187549540756837 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling PJC 1.6984 2e-04 NO
## 2 Anderson-Darling LJOV 1.3672 0.0014 NO
## 3 Anderson-Darling JSEE 1.1530 0.0049 NO
## 4 Anderson-Darling MP 4.9412 <0.001 NO
## 5 Anderson-Darling DSA 2.8094 <0.001 NO
## 6 Anderson-Darling C 2.0699 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## PJC 98 0.6142857 0.1978909 0.670 0.04 0.93 0.5025 0.7600 -0.7587448
## LJOV 98 0.7880612 0.1122466 0.810 0.37 0.99 0.7225 0.8700 -0.9152898
## JSEE 98 17.2427551 8.6935529 16.540 4.13 41.22 10.3550 23.7300 0.5335833
## MP 98 10.0371429 10.2756028 5.655 0.31 55.48 2.3700 15.2375 1.7159316
## DSA 98 69.8132653 17.7520008 74.800 9.30 91.00 60.1000 83.4750 -1.0485899
## C 98 47.7755102 19.1739356 43.500 18.00 88.00 33.0000 60.0000 0.5565910
## Kurtosis
## PJC -0.09739139
## LJOV 0.94570344
## JSEE -0.51781800
## MP 3.54307393
## DSA 0.57731940
## C -0.80160857
mvn(data = X2, mvnTest = "mardia", multivariateOutlierMethod = "quan")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 201.691674378005 2.50180421979121e-18 NO
## 2 Mardia Kurtosis 3.10927110586497 0.00187549540756837 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling PJC 1.6984 2e-04 NO
## 2 Anderson-Darling LJOV 1.3672 0.0014 NO
## 3 Anderson-Darling JSEE 1.1530 0.0049 NO
## 4 Anderson-Darling MP 4.9412 <0.001 NO
## 5 Anderson-Darling DSA 2.8094 <0.001 NO
## 6 Anderson-Darling C 2.0699 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## PJC 98 0.6142857 0.1978909 0.670 0.04 0.93 0.5025 0.7600 -0.7587448
## LJOV 98 0.7880612 0.1122466 0.810 0.37 0.99 0.7225 0.8700 -0.9152898
## JSEE 98 17.2427551 8.6935529 16.540 4.13 41.22 10.3550 23.7300 0.5335833
## MP 98 10.0371429 10.2756028 5.655 0.31 55.48 2.3700 15.2375 1.7159316
## DSA 98 69.8132653 17.7520008 74.800 9.30 91.00 60.1000 83.4750 -1.0485899
## C 98 47.7755102 19.1739356 43.500 18.00 88.00 33.0000 60.0000 0.5565910
## Kurtosis
## PJC -0.09739139
## LJOV 0.94570344
## JSEE -0.51781800
## MP 3.54307393
## DSA 0.57731940
## C -0.80160857
mvn(data = X2, mvnTest="mardia", multivariateOutlierMethod = "adj")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 201.691674378005 2.50180421979121e-18 NO
## 2 Mardia Kurtosis 3.10927110586497 0.00187549540756837 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling PJC 1.6984 2e-04 NO
## 2 Anderson-Darling LJOV 1.3672 0.0014 NO
## 3 Anderson-Darling JSEE 1.1530 0.0049 NO
## 4 Anderson-Darling MP 4.9412 <0.001 NO
## 5 Anderson-Darling DSA 2.8094 <0.001 NO
## 6 Anderson-Darling C 2.0699 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## PJC 98 0.6142857 0.1978909 0.670 0.04 0.93 0.5025 0.7600 -0.7587448
## LJOV 98 0.7880612 0.1122466 0.810 0.37 0.99 0.7225 0.8700 -0.9152898
## JSEE 98 17.2427551 8.6935529 16.540 4.13 41.22 10.3550 23.7300 0.5335833
## MP 98 10.0371429 10.2756028 5.655 0.31 55.48 2.3700 15.2375 1.7159316
## DSA 98 69.8132653 17.7520008 74.800 9.30 91.00 60.1000 83.4750 -1.0485899
## C 98 47.7755102 19.1739356 43.500 18.00 88.00 33.0000 60.0000 0.5565910
## Kurtosis
## PJC -0.09739139
## LJOV 0.94570344
## JSEE -0.51781800
## MP 3.54307393
## DSA 0.57731940
## C -0.80160857
Prueba de Esfericidad de Barlet
bart_spher(X2)
## Bartlett's Test of Sphericity
##
## Call: bart_spher(x = X2)
##
## X2 = 205.138
## df = 15
## p-value < 2.22e-16
La hipótesis nula significa que las correlaciones entre las variables son todas igual a cero (en una matriz de identidad el valor del determinante es 1). La hipótesis alternativa asume que la matriz de correlaciones es distinta de la matriz identidad o, es decir, que el determinante de la matriz de correlaciones es significativamente distinto de 1.
En el resultado obtenido, observamos que el
p-value < 2.22e-16; por lo tanto, se rechaza la
hipótesis nula y tendría sentido aplicar el AF.
S3 <- cov(X3)
Diagt3 <- diag(S3)
DiagInv3 <- diag(solve(S3))
RMult3 <- diag((diag(rep(1, n3[2])) - solve(diag(diag(Diagt3%*%t(DiagInv3)))))^(1/2))
RMult3
## [1] 0.6668533 0.8031295 0.6748721 0.7063318 0.5702297 0.6113112
Evalución de la Normalidad Multivariada y Detección de Datos Atípicos Multivariados
mvn(data = X3, mvnTest = "mardia", covariance = TRUE)
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 159.320503548248 7.5214899707673e-12 NO
## 2 Mardia Kurtosis 2.2675385817351 0.0233573447851108 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling IPPG 0.2096 0.858 YES
## 2 Anderson-Darling AJGL 2.7312 <0.001 NO
## 3 Anderson-Darling AJI 0.6065 0.112 YES
## 4 Anderson-Darling RSCJ 4.2235 <0.001 NO
## 5 Anderson-Darling JSOA 1.3086 0.002 NO
## 6 Anderson-Darling DVCM 0.9417 0.0164 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## IPPG 98 2.1534694 0.58210443 2.135 0.76 3.50 1.7525 2.545 0.1416603
## AJGL 98 0.4200000 0.30107026 0.360 0.00 0.96 0.1500 0.710 0.3866543
## AJI 98 0.6108163 0.18742792 0.620 0.15 0.94 0.4725 0.760 -0.3511516
## RSCJ 98 0.8791837 0.10818725 0.920 0.46 1.00 0.8300 0.960 -1.4880173
## JSOA 98 0.8133673 0.08151837 0.825 0.50 0.97 0.7700 0.870 -0.9593665
## DVCM 98 6.0091837 2.43123944 6.100 0.70 10.00 4.0250 8.280 -0.1719640
## Kurtosis
## IPPG -0.4582515
## AJGL -1.2549967
## AJI -0.6133086
## RSCJ 2.2056319
## JSOA 1.5124737
## DVCM -1.0246746
mvn(data = X3, mvnTest = "mardia", multivariateOutlierMethod = "quan")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 159.320503548248 7.5214899707673e-12 NO
## 2 Mardia Kurtosis 2.2675385817351 0.0233573447851108 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling IPPG 0.2096 0.858 YES
## 2 Anderson-Darling AJGL 2.7312 <0.001 NO
## 3 Anderson-Darling AJI 0.6065 0.112 YES
## 4 Anderson-Darling RSCJ 4.2235 <0.001 NO
## 5 Anderson-Darling JSOA 1.3086 0.002 NO
## 6 Anderson-Darling DVCM 0.9417 0.0164 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## IPPG 98 2.1534694 0.58210443 2.135 0.76 3.50 1.7525 2.545 0.1416603
## AJGL 98 0.4200000 0.30107026 0.360 0.00 0.96 0.1500 0.710 0.3866543
## AJI 98 0.6108163 0.18742792 0.620 0.15 0.94 0.4725 0.760 -0.3511516
## RSCJ 98 0.8791837 0.10818725 0.920 0.46 1.00 0.8300 0.960 -1.4880173
## JSOA 98 0.8133673 0.08151837 0.825 0.50 0.97 0.7700 0.870 -0.9593665
## DVCM 98 6.0091837 2.43123944 6.100 0.70 10.00 4.0250 8.280 -0.1719640
## Kurtosis
## IPPG -0.4582515
## AJGL -1.2549967
## AJI -0.6133086
## RSCJ 2.2056319
## JSOA 1.5124737
## DVCM -1.0246746
mvn(data = X3, mvnTest="mardia", multivariateOutlierMethod = "adj")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 159.320503548248 7.5214899707673e-12 NO
## 2 Mardia Kurtosis 2.2675385817351 0.0233573447851108 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling IPPG 0.2096 0.858 YES
## 2 Anderson-Darling AJGL 2.7312 <0.001 NO
## 3 Anderson-Darling AJI 0.6065 0.112 YES
## 4 Anderson-Darling RSCJ 4.2235 <0.001 NO
## 5 Anderson-Darling JSOA 1.3086 0.002 NO
## 6 Anderson-Darling DVCM 0.9417 0.0164 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## IPPG 98 2.1534694 0.58210443 2.135 0.76 3.50 1.7525 2.545 0.1416603
## AJGL 98 0.4200000 0.30107026 0.360 0.00 0.96 0.1500 0.710 0.3866543
## AJI 98 0.6108163 0.18742792 0.620 0.15 0.94 0.4725 0.760 -0.3511516
## RSCJ 98 0.8791837 0.10818725 0.920 0.46 1.00 0.8300 0.960 -1.4880173
## JSOA 98 0.8133673 0.08151837 0.825 0.50 0.97 0.7700 0.870 -0.9593665
## DVCM 98 6.0091837 2.43123944 6.100 0.70 10.00 4.0250 8.280 -0.1719640
## Kurtosis
## IPPG -0.4582515
## AJGL -1.2549967
## AJI -0.6133086
## RSCJ 2.2056319
## JSOA 1.5124737
## DVCM -1.0246746
Prueba de Esfericidad de Barlet
bart_spher(X3)
## Bartlett's Test of Sphericity
##
## Call: bart_spher(x = X3)
##
## X2 = 209.259
## df = 15
## p-value < 2.22e-16
La hipótesis nula significa que las correlaciones entre las variables son todas igual a cero (en una matriz de identidad el valor del determinante es 1). La hipótesis alternativa asume que la matriz de correlaciones es distinta de la matriz identidad o, es decir, que el determinante de la matriz de correlaciones es significativamente distinto de 1.
En el resultado obtenido, observamos que el
p-value < 2.22e-16; por lo tanto, se rechaza la
hipótesis nula y tendría sentido aplicar el AF.
S4 <- cov(X4)
Diagt4 <- diag(S4)
DiagInv4 <- diag(solve(S4))
RMult4 <- diag((diag(rep(1, n4[2])) - solve(diag(diag(Diagt4%*%t(DiagInv4)))))^(1/2))
RMult4
## [1] 0.6710554 0.8024482 0.8025557 0.2796233
Evalución de la Normalidad Multivariada y Detección de Datos Atípicos Multivariados
mvn(data = X4, mvnTest = "mardia", covariance = TRUE)
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 786.069973988705 1.2800469117664e-153 NO
## 2 Mardia Kurtosis 33.6137366575088 0 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling DC 8.0733 <0.001 NO
## 2 Anderson-Darling PMEA 3.4190 <0.001 NO
## 3 Anderson-Darling AETE 1.4224 0.0011 NO
## 4 Anderson-Darling UPC 15.9893 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## DC 98 1.0444898 1.3083342 0.330 0.00 5.20 0.0625 1.7000 1.3085351
## PMEA 98 0.5967347 0.2965603 0.675 0.02 0.95 0.3550 0.8800 -0.5034358
## AETE 98 2.4015306 1.4320595 2.685 0.16 6.19 0.9925 3.3425 0.1039246
## UPC 98 52.7755099 121.7688991 15.100 0.00 1072.60 3.8000 51.3000 6.2666813
## Kurtosis
## DC 0.7068908
## PMEA -1.1522214
## AETE -0.7669198
## UPC 47.7918305
mvn(data = X4, mvnTest = "mardia", multivariateOutlierMethod = "quan")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 786.069973988705 1.2800469117664e-153 NO
## 2 Mardia Kurtosis 33.6137366575088 0 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling DC 8.0733 <0.001 NO
## 2 Anderson-Darling PMEA 3.4190 <0.001 NO
## 3 Anderson-Darling AETE 1.4224 0.0011 NO
## 4 Anderson-Darling UPC 15.9893 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## DC 98 1.0444898 1.3083342 0.330 0.00 5.20 0.0625 1.7000 1.3085351
## PMEA 98 0.5967347 0.2965603 0.675 0.02 0.95 0.3550 0.8800 -0.5034358
## AETE 98 2.4015306 1.4320595 2.685 0.16 6.19 0.9925 3.3425 0.1039246
## UPC 98 52.7755099 121.7688991 15.100 0.00 1072.60 3.8000 51.3000 6.2666813
## Kurtosis
## DC 0.7068908
## PMEA -1.1522214
## AETE -0.7669198
## UPC 47.7918305
mvn(data = X4, mvnTest="mardia", multivariateOutlierMethod = "adj")
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 786.069973988705 1.2800469117664e-153 NO
## 2 Mardia Kurtosis 33.6137366575088 0 NO
## 3 MVN <NA> <NA> NO
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling DC 8.0733 <0.001 NO
## 2 Anderson-Darling PMEA 3.4190 <0.001 NO
## 3 Anderson-Darling AETE 1.4224 0.0011 NO
## 4 Anderson-Darling UPC 15.9893 <0.001 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th Skew
## DC 98 1.0444898 1.3083342 0.330 0.00 5.20 0.0625 1.7000 1.3085351
## PMEA 98 0.5967347 0.2965603 0.675 0.02 0.95 0.3550 0.8800 -0.5034358
## AETE 98 2.4015306 1.4320595 2.685 0.16 6.19 0.9925 3.3425 0.1039246
## UPC 98 52.7755099 121.7688991 15.100 0.00 1072.60 3.8000 51.3000 6.2666813
## Kurtosis
## DC 0.7068908
## PMEA -1.1522214
## AETE -0.7669198
## UPC 47.7918305
Prueba de Esfericidad de Barlet
bart_spher(X4)
## Bartlett's Test of Sphericity
##
## Call: bart_spher(x = X4)
##
## X2 = 153.24
## df = 6
## p-value < 2.22e-16
La hipótesis nula significa que las correlaciones entre las variables son todas igual a cero (en una matriz de identidad el valor del determinante es 1). La hipótesis alternativa asume que la matriz de correlaciones es distinta de la matriz identidad o, es decir, que el determinante de la matriz de correlaciones es significativamente distinto de 1.
En el resultado obtenido, observamos que el
p-value < 2.22e-16; por lo tanto, se rechaza la
hipótesis nula y tendría sentido aplicar el AF.
Componentes principales
afe1 <- PCA(X1, graph = FALSE)
summary(afe1)
##
## Call:
## PCA(X = X1, graph = FALSE)
##
##
## Eigenvalues
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5 Dim.6
## Variance 3.642 0.928 0.607 0.450 0.228 0.144
## % of var. 60.705 15.466 10.117 7.503 3.801 2.408
## Cumulative % of var. 60.705 76.171 86.288 93.791 97.592 100.000
##
## Individuals (the 10 first)
## Dist Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr
## 1 | 3.586 | -2.562 1.839 0.510 | 1.749 3.364 0.238 | -0.244 0.100
## 2 | 1.172 | 0.487 0.066 0.172 | -0.069 0.005 0.004 | 0.555 0.518
## 5 | 1.833 | 1.539 0.663 0.704 | -0.669 0.492 0.133 | -0.004 0.000
## 6 | 3.226 | 1.077 0.325 0.111 | 2.898 9.236 0.807 | 0.532 0.475
## 7 | 2.370 | 1.841 0.949 0.603 | -1.424 2.230 0.361 | -0.407 0.278
## 8 | 2.342 | 1.819 0.927 0.603 | 1.220 1.636 0.271 | -0.097 0.016
## 9 | 4.216 | -4.182 4.900 0.984 | 0.520 0.297 0.015 | -0.038 0.002
## 11 | 2.907 | -2.339 1.533 0.647 | -0.154 0.026 0.003 | -0.362 0.221
## 12 | 3.993 | -3.641 3.715 0.832 | 0.819 0.737 0.042 | -0.949 1.515
## 13 | 2.228 | 2.181 1.333 0.958 | -0.308 0.104 0.019 | -0.322 0.174
## cos2
## 1 0.005 |
## 2 0.224 |
## 5 0.000 |
## 6 0.027 |
## 7 0.029 |
## 8 0.002 |
## 9 0.000 |
## 11 0.016 |
## 12 0.057 |
## 13 0.021 |
##
## Variables
## Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr cos2
## AJ | 0.863 20.445 0.745 | -0.136 1.987 0.018 | -0.178 5.240 0.032 |
## LE | 0.896 22.039 0.803 | -0.147 2.330 0.022 | 0.141 3.271 0.020 |
## LR | 0.724 14.386 0.524 | -0.283 8.639 0.080 | 0.500 41.148 0.250 |
## DPM | 0.741 15.072 0.549 | 0.215 4.969 0.046 | -0.473 36.866 0.224 |
## DP | 0.927 23.583 0.859 | -0.061 0.404 0.004 | -0.099 1.621 0.010 |
## PJP | 0.404 4.476 0.163 | 0.871 81.671 0.758 | 0.268 11.854 0.072 |
Determinar N° de Factores a elegir
fviz_eig(afe1, ylab = "Porcentaje de Varianza", xlab = "N° de factor", addlabels = TRUE, ylim = c(0, 80))
fviz_eig(afe1, choice = c("eigenvalue"), main = "Gráfico de Sedimentación", addlabels = T, xlab = "N° de factor", ylim = c(0, 4))
afe2 <- PCA(X2, graph = FALSE)
summary(afe2)
##
## Call:
## PCA(X = X2, graph = FALSE)
##
##
## Eigenvalues
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5 Dim.6
## Variance 3.144 0.894 0.733 0.523 0.493 0.213
## % of var. 52.407 14.896 12.215 8.709 8.216 3.556
## Cumulative % of var. 52.407 67.304 79.519 88.227 96.444 100.000
##
## Individuals (the 10 first)
## Dist Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr
## 1 | 5.290 | -4.568 6.771 0.746 | 1.064 1.291 0.040 | -1.566 3.415
## 2 | 3.811 | -2.482 1.999 0.424 | -0.387 0.171 0.010 | -1.298 2.347
## 5 | 1.385 | -0.453 0.067 0.107 | 0.837 0.800 0.365 | 0.818 0.931
## 6 | 2.622 | -0.460 0.069 0.031 | -1.062 1.287 0.164 | -0.093 0.012
## 7 | 2.538 | 2.496 2.022 0.967 | -0.241 0.066 0.009 | -0.182 0.046
## 8 | 2.752 | 2.728 2.415 0.982 | -0.212 0.051 0.006 | 0.184 0.047
## 9 | 2.866 | -0.731 0.173 0.065 | -2.035 4.727 0.504 | -1.129 1.776
## 11 | 2.804 | -1.212 0.476 0.187 | -1.437 2.358 0.263 | 1.883 4.938
## 12 | 2.671 | 0.475 0.073 0.032 | -0.150 0.026 0.003 | -1.963 5.365
## 13 | 2.304 | 1.929 1.207 0.701 | 0.576 0.379 0.062 | -0.667 0.619
## cos2
## 1 0.088 |
## 2 0.116 |
## 5 0.348 |
## 6 0.001 |
## 7 0.005 |
## 8 0.004 |
## 9 0.155 |
## 11 0.451 |
## 12 0.540 |
## 13 0.084 |
##
## Variables
## Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr cos2
## PJC | -0.643 13.167 0.414 | 0.666 49.618 0.443 | 0.181 4.489 0.033 |
## LJOV | 0.657 13.713 0.431 | -0.217 5.282 0.047 | 0.612 51.088 0.374 |
## JSEE | -0.736 17.214 0.541 | 0.086 0.822 0.007 | 0.294 11.826 0.087 |
## MP | -0.688 15.072 0.474 | -0.477 25.463 0.228 | 0.324 14.345 0.105 |
## DSA | 0.705 15.828 0.498 | 0.410 18.775 0.168 | 0.351 16.766 0.123 |
## C | 0.887 25.006 0.786 | 0.019 0.040 0.000 | -0.104 1.487 0.011 |
Determinar N° de Factores a elegir
fviz_eig(afe2, ylab = "Porcentaje de Varianza", xlab = "N° de factor", addlabels = TRUE, ylim = c(0, 80))
fviz_eig(afe2, choice = c("eigenvalue"), main = "Gráfico de Sedimentación", addlabels = T, xlab = "N° de factor", ylim = c(0, 4))
afe3 <- PCA(X3, graph = FALSE)
summary(afe3)
##
## Call:
## PCA(X = X3, graph = FALSE)
##
##
## Eigenvalues
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5 Dim.6
## Variance 3.029 1.167 0.706 0.475 0.388 0.236
## % of var. 50.478 19.444 11.768 7.916 6.464 3.930
## Cumulative % of var. 50.478 69.922 81.689 89.606 96.070 100.000
##
## Individuals (the 10 first)
## Dist Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr
## 1 | 6.093 | -4.958 8.282 0.662 | -2.703 6.390 0.197 | -1.314 2.494
## 2 | 1.460 | -0.716 0.173 0.240 | -0.147 0.019 0.010 | -0.801 0.928
## 5 | 1.589 | 1.425 0.684 0.804 | -0.446 0.174 0.079 | -0.268 0.104
## 6 | 1.646 | -0.742 0.186 0.203 | 0.031 0.001 0.000 | -0.093 0.013
## 7 | 2.654 | 2.490 2.090 0.880 | -0.602 0.317 0.052 | 0.238 0.082
## 8 | 2.388 | 2.325 1.822 0.948 | -0.402 0.141 0.028 | 0.201 0.058
## 9 | 2.377 | -1.625 0.889 0.467 | -0.466 0.190 0.038 | -0.738 0.787
## 11 | 2.085 | -1.126 0.427 0.291 | -0.159 0.022 0.006 | 1.538 3.418
## 12 | 1.742 | -1.036 0.362 0.354 | 0.315 0.087 0.033 | -1.139 1.876
## 13 | 1.630 | 1.283 0.555 0.620 | -0.485 0.206 0.089 | -0.110 0.018
## cos2
## 1 0.046 |
## 2 0.301 |
## 5 0.029 |
## 6 0.003 |
## 7 0.008 |
## 8 0.007 |
## 9 0.096 |
## 11 0.544 |
## 12 0.428 |
## 13 0.005 |
##
## Variables
## Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr cos2
## IPPG | 0.793 20.781 0.629 | 0.045 0.175 0.002 | -0.052 0.383 0.003 |
## AJGL | 0.869 24.914 0.755 | -0.195 3.258 0.038 | 0.150 3.173 0.022 |
## AJI | 0.583 11.207 0.339 | -0.641 35.220 0.411 | 0.410 23.816 0.168 |
## RSCJ | 0.719 17.052 0.516 | 0.480 19.724 0.230 | -0.232 7.655 0.054 |
## JSOA | 0.551 10.026 0.304 | 0.641 35.192 0.411 | 0.400 22.630 0.160 |
## DVCM | -0.697 16.020 0.485 | 0.274 6.432 0.075 | 0.547 42.344 0.299 |
Determinar N° de Factores a elegir
fviz_eig(afe3, ylab = "Porcentaje de Varianza", xlab = "N° de factor", addlabels = TRUE, ylim = c(0, 80))
fviz_eig(afe3, choice = c("eigenvalue"), main = "Gráfico de Sedimentación", addlabels = T, xlab = "N° de factor", ylim = c(0, 4))
afe4 <- PCA(X4, graph = FALSE)
summary(afe4)
##
## Call:
## PCA(X = X4, graph = FALSE)
##
##
## Eigenvalues
## Dim.1 Dim.2 Dim.3 Dim.4
## Variance 2.482 0.887 0.412 0.219
## % of var. 62.042 22.184 10.297 5.477
## Cumulative % of var. 62.042 84.226 94.523 100.000
##
## Individuals (the 10 first)
## Dist Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr
## 1 | 2.264 | -2.202 1.995 0.946 | 0.160 0.029 0.005 | 0.470 0.547
## 2 | 0.856 | -0.437 0.078 0.260 | -0.239 0.066 0.078 | -0.603 0.900
## 5 | 1.642 | 0.821 0.277 0.250 | -0.057 0.004 0.001 | -1.234 3.773
## 6 | 1.050 | 0.253 0.026 0.058 | -0.441 0.224 0.176 | -0.819 1.663
## 7 | 3.279 | 3.099 3.950 0.893 | -0.168 0.032 0.003 | 0.683 1.155
## 8 | 1.965 | 1.846 1.402 0.883 | -0.536 0.330 0.074 | 0.382 0.361
## 9 | 1.052 | -0.793 0.259 0.569 | -0.172 0.034 0.027 | -0.366 0.331
## 11 | 1.818 | -1.772 1.291 0.950 | 0.222 0.057 0.015 | 0.238 0.141
## 12 | 1.692 | 0.849 0.296 0.252 | -0.462 0.246 0.075 | -1.389 4.779
## 13 | 1.956 | 1.836 1.386 0.881 | -0.582 0.390 0.089 | 0.332 0.273
## cos2
## 1 0.043 |
## 2 0.496 |
## 5 0.565 |
## 6 0.609 |
## 7 0.043 |
## 8 0.038 |
## 9 0.121 |
## 11 0.017 |
## 12 0.674 |
## 13 0.029 |
##
## Variables
## Dim.1 ctr cos2 Dim.2 ctr cos2 Dim.3 ctr cos2
## DC | 0.826 27.480 0.682 | -0.190 4.085 0.036 | 0.531 68.394 0.282 |
## PMEA | 0.898 32.489 0.806 | -0.152 2.618 0.023 | -0.246 14.697 0.061 |
## AETE | 0.902 32.781 0.814 | -0.099 1.111 0.010 | -0.261 16.488 0.068 |
## UPC | 0.424 7.250 0.180 | 0.904 92.186 0.818 | 0.042 0.421 0.002 |
Determinar N° de Factores a elegir
fviz_eig(afe4, ylab = "Porcentaje de Varianza", xlab = "N° de factor", addlabels = TRUE, ylim = c(0, 80))
fviz_eig(afe4, choice = c("eigenvalue"), main = "Gráfico de Sedimentación", addlabels = T, xlab = "N° de factor", ylim = c(0, 4))
Escogemos los 2 primeros componentes principales.
CF1_DP <- afe1$var$coord
CF12_DP <- afe1$var$coord[, 1:2]
CF13_DP <- afe1$var$coord[, 1:3]
Proporción de la varianza de la variable explicada por los dos y tres primeros factores
PV12_DP <- CF12_DP^2
PV13_DP <- CF13_DP^2
PV12_DP
## Dim.1 Dim.2
## AJ 0.7446478 0.018439714
## LE 0.8027074 0.021624445
## LR 0.5239892 0.080168154
## DPM 0.5489492 0.046109396
## DP 0.8589585 0.003744388
## PJP 0.1630292 0.757862905
PV13_DP
## Dim.1 Dim.2 Dim.3
## AJ 0.7446478 0.018439714 0.031811066
## LE 0.8027074 0.021624445 0.019855571
## LR 0.5239892 0.080168154 0.249790226
## DPM 0.5489492 0.046109396 0.223794914
## DP 0.8589585 0.003744388 0.009838623
## PJP 0.1630292 0.757862905 0.071957652
Cálculo de las Comunalidades y varianza específica
Para los dos primeros factores
CM12_DP <- as.matrix(rowSums(CF12_DP^2))
VE12_DP <- 1-CM12_DP
VE12_DP
## [,1]
## AJ 0.23691251
## LE 0.17566817
## LR 0.39584266
## DPM 0.40494136
## DP 0.13729713
## PJP 0.07910786
Para tres factores
CM13_DP <- as.matrix(rowSums(CF13_DP^2))
VE13_DP <- 1-CM13_DP
VE13_DP
## [,1]
## AJ 0.205101442
## LE 0.155812604
## LR 0.146052435
## DPM 0.181146445
## DP 0.127458505
## PJP 0.007150213
Para todos los factores
CM1_DP <- as.matrix(rowSums(CF1_DP^2))
VE1_DP <- 1-CM1_DP
VE1_DP
## [,1]
## AJ 2.131448e-03
## LE 4.954449e-02
## LR 9.122711e-04
## DPM 5.777989e-03
## DP 8.609591e-02
## PJP 1.933602e-05
Obtención de los autovalores a partir de las cargas factoriales
Cuando se ha considerado dos factores
T12_DP <- CF12_DP[,1:2]^2
T1d_DP <- as.matrix(colSums(T12_DP))
T1d_DP
## [,1]
## Dim.1 3.642281
## Dim.2 0.927949
Cuando se ha considerado tres factores
T13_DP <- CF13_DP[,1:3]^2
T3d_DP <- as.matrix(colSums(T13_DP))
T3d_DP
## [,1]
## Dim.1 3.6422813
## Dim.2 0.9279490
## Dim.3 0.6070481
Gráfico para dos factores
fviz_pca_var(afe1, col.var = "darkgreen")
Para todos los factores
corrplot(afe1$var$coord, is.corr = FALSE)
CF1_LPE <- afe2$var$coord
CF12_LPE <- afe2$var$coord[, 1:2]
CF13_LPE <- afe2$var$coord[, 1:3]
Proporción de la varianza de la variable explicada por los dos y tres primeros factores
PV12_LPE <- CF12_LPE^2
PV13_LPE <- CF13_LPE^2
Cálculo de las Comunalidades y varianza específica
Para los dos primeros factores
CM12_LPE <- as.matrix(rowSums(CF12_LPE^2))
VE12_LPE <- 1-CM12_LPE
VE12_LPE
## [,1]
## PJC 0.1424851
## LJOV 0.5216093
## JSEE 0.4513666
## MP 0.2984858
## DSA 0.3344818
## C 0.2133551
Para tres factores
CM13_LPE <- as.matrix(rowSums(CF13_LPE^2))
VE13_LPE <- 1-CM13_LPE
VE13_LPE
## [,1]
## PJC 0.1095880
## LJOV 0.1471901
## JSEE 0.3646946
## MP 0.1933528
## DSA 0.2116079
## C 0.2024554
Para todos los factores
CM1_LPE <- as.matrix(rowSums(CF1_LPE^2))
VE1_LPE <- 1-CM1_LPE
VE1_LPE
## [,1]
## PJC 0.0411818457
## LJOV 0.0002285042
## JSEE 0.0008452967
## MP 0.0249584017
## DSA 0.0219433200
## C 0.1242208750
Obtención de los autovalores a partir de las cargas factoriales
Cuando se ha considerado dos factores
T12_LPE <- CF12_LPE[,1:2]^2
T1d_LPE <- as.matrix(colSums(T12_LPE))
T1d_LPE
## [,1]
## Dim.1 3.1444340
## Dim.2 0.8937822
Cuando se ha considerado tres factores
T13_LPE <- CF13_LPE[,1:3]^2
T3d_LPE <- as.matrix(colSums(T13_LPE))
T3d_LPE
## [,1]
## Dim.1 3.1444340
## Dim.2 0.8937822
## Dim.3 0.7328950
Gráfico para dos factores
fviz_pca_var(afe2, col.var = "darkgreen")
Para todos los factores
corrplot(afe2$var$coord, is.corr = FALSE)
CF1_INC <- afe3$var$coord
CF12_INC <- afe3$var$coord[, 1:2]
CF13_INC <- afe3$var$coord[, 1:3]
Proporción de la varianza de la variable explicada por los dos y tres primeros factores
PV12_INC <- CF12_INC^2
PV13_INC <- CF13_INC^2
Cálculo de las Comunalidades y varianza específica
Para los dos primeros factores
CM12_INC <- as.matrix(rowSums(CF12_INC^2))
VE12_INC <- 1-CM12_INC
VE12_INC
## [,1]
## IPPG 0.3685712
## AJGL 0.2074096
## AJI 0.2496929
## RSCJ 0.2534378
## JSOA 0.2857974
## DVCM 0.4397862
Para tres factores
CM13_INC <- as.matrix(rowSums(CF13_INC^2))
VE13_INC <- 1-CM13_INC
VE13_INC
## [,1]
## IPPG 0.36586728
## AJGL 0.18500838
## AJI 0.08153688
## RSCJ 0.19939208
## JSOA 0.12601254
## DVCM 0.14081382
Para todos los factores
CM1_INC <- as.matrix(rowSums(CF1_INC^2))
VE1_INC <- 1-CM1_INC
VE1_INC
## [,1]
## IPPG 0.007618547
## AJGL 0.126885537
## AJI 0.058863773
## RSCJ 0.039848051
## JSOA 0.001321879
## DVCM 0.001246273
Obtención de los autovalores a partir de las cargas factoriales
Cuando se ha considerado dos factores
T12_INC <- CF12_INC[,1:2]^2
T1d_INC <- as.matrix(colSums(T12_INC))
T1d_INC
## [,1]
## Dim.1 3.028666
## Dim.2 1.166639
Cuando se ha considerado tres factores
T13_INC <- CF13_INC[,1:3]^2
T3d_INC <- as.matrix(colSums(T13_INC))
T3d_INC
## [,1]
## Dim.1 3.0286660
## Dim.2 1.1666390
## Dim.3 0.7060641
Gráfico para dos factores
fviz_pca_var(afe3, col.var = "darkgreen")
Para todos los factores
corrplot(afe3$var$coord, is.corr = FALSE)
CF1_AES <- afe4$var$coord
CF12_AES <- afe4$var$coord[, 1:2]
# CF13_AES <- afe4$var$coord[, 1:3]
CF1_AES
## Dim.1 Dim.2 Dim.3 Dim.4
## DC 0.8258156 -0.19038289 0.53074658 -0.009543566
## PMEA 0.8979208 -0.15241062 -0.24603729 0.331624655
## AETE 0.9019517 -0.09931042 -0.26059285 -0.329714867
## UPC 0.4241780 0.90444808 0.04164615 0.017670520
CF12_AES
## Dim.1 Dim.2
## DC 0.8258156 -0.19038289
## PMEA 0.8979208 -0.15241062
## AETE 0.9019517 -0.09931042
## UPC 0.4241780 0.90444808
Proporción de la varianza de la variable explicada por los dos factores
PV12_AES <- CF12_AES^2
# PV13_AES <- CF13_AES^2
PV12_AES
## Dim.1 Dim.2
## DC 0.6819713 0.036245644
## PMEA 0.8062617 0.023228998
## AETE 0.8135169 0.009862559
## UPC 0.1799270 0.818026338
Cálculo de las Comunalidades y varianza específica
Para los dos primeros factores
CM12_AES <- as.matrix(rowSums(CF12_AES^2))
VE12_AES <- 1-CM12_AES
VE12_AES
## [,1]
## DC 0.281783009
## PMEA 0.170509260
## AETE 0.176620527
## UPC 0.002046649
Para tres factores
#CM13_AES <- as.matrix(rowSums(CF13_AES^2))
#VE13_AES <- 1-CM13_AES
#VE13_AES
Para todos los factores
CM1_AES <- as.matrix(rowSums(CF1_AES^2))
VE1_AES <- 1-CM1_AES
VE1_AES
## [,1]
## DC -6.661338e-16
## PMEA -1.554312e-15
## AETE -1.554312e-15
## UPC -1.332268e-15
Obtención de los autovalores a partir de las cargas factoriales
Cuando se ha considerado dos factores
T12_AES <- CF12_AES[,1:2]^2
T1d_AES <- as.matrix(colSums(T12_AES))
T1d_AES
## [,1]
## Dim.1 2.4816770
## Dim.2 0.8873635
Cuando se ha considerado tres factores
#T13_AES <- CF13_AES[,1:3]^2
#T3d_AES <- as.matrix(colSums(T13_AES))
#T3d_AES
Gráfico para dos factores
fviz_pca_var(afe4, col.var = "darkgreen")
Para todos los factores
corrplot(afe4$var$coord, is.corr = FALSE)
Método Varimax
Para dos factores
rotavari1_DP <- varimax(CF12_DP[,1:2])
Tr1_DP <- rotavari1_DP$rotmat
FR12_DP <- CF12_DP[,1:2]%*%Tr1_DP
Para tres factores
rotavari12_DP <- varimax(CF13_DP[,1:3])
Tr12_DP <- rotavari12_DP$rotmat
FR13_DP <- CF13_DP[,1:3]%*%Tr12_DP
Gráfico de las variables en componentes rotados
plot(-1:1, -1:1, type = 'n', asp = 1, xlab = 'Factor rotado 1', ylab = 'Factor rotado 2', main = "Derechos Personsales")
abline(h = 0, v = 0, lty = 2, col = 3)
## Dibuja un círculo de centro (0,0) y radio 1
symbols(0, 0, 1, inches = F, add = T)
## Dibuja los vectores y coloca los nombres
arrows(0, 0, FR12_DP[,1], FR12_DP[,2], length = .1)
text(FR12_DP[,1], FR12_DP[,2], colnames(X1), pos = 1, offset = .5, col = 4, font = 2)
corrplot(FR12_DP, is.corr = FALSE)
modelo1r_DP <- fa(X1, rotate = "varimax", nfactors = 2, fm = "minres")
fa.diagram(modelo1r_DP)
modelo2r_DP <- fa(X1, rotate = "varimax", nfactors = 3, fm = "minres")
fa.diagram(modelo2r_DP)
Método Varimax
Para dos factores
rotavari1_LPE <- varimax(CF12_LPE[,1:2])
Tr1_LPE <- rotavari1_LPE$rotmat
FR12_LPE <- CF12_LPE[,1:2]%*%Tr1_LPE
Para tres factores
rotavari12_LPE <- varimax(CF13_LPE[,1:3])
Tr12_LPE <- rotavari12_LPE$rotmat
FR13_LPE <- CF13_LPE[,1:3]%*%Tr12_LPE
Gráfico de las variables en componentes rotados
plot(-1:1, -1:1, type = 'n', asp = 1, xlab = 'Factor rotado 1', ylab = 'Factor rotado 2', main = "Libertades Personales y de Elección")
abline(h = 0, v = 0, lty = 2, col = 3)
## Dibuja un círculo de centro (0,0) y radio 1
symbols(0, 0, 1, inches = F, add = T)
## Dibuja los vectores y coloca los nombres
arrows(0, 0, FR12_LPE[,1], FR12_LPE[,2], length = .1)
text(FR12_LPE[,1], FR12_LPE[,2], colnames(X2), pos = 1, offset = .5, col = 4, font = 2)
corrplot(FR12_LPE, is.corr = FALSE)
modelo1r_LPE <- fa(X2, rotate = "varimax", nfactors = 2, 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
fa.diagram(modelo1r_LPE)
modelo2r_LPE <- fa(X2, rotate = "varimax", nfactors = 3, fm = "minres")
fa.diagram(modelo2r_LPE)
Método Varimax
Para dos factores
rotavari1_INC <- varimax(CF12_INC[,1:2])
Tr1_INC <- rotavari1_INC$rotmat
FR12_INC <- CF12_INC[,1:2]%*%Tr1_INC
Para tres factores
rotavari12_INC <- varimax(CF13_INC[,1:3])
Tr12_INC <- rotavari12_INC$rotmat
FR13_INC <- CF13_INC[,1:3]%*%Tr12_INC
Gráfico de las variables en componentes rotados
plot(-1:1, -1:1, type = 'n', asp = 1, xlab = 'Factor rotado 1', ylab = 'Factor rotado 2', main = "Inclusión")
abline(h = 0, v = 0, lty = 2, col = 3)
## Dibuja un círculo de centro (0,0) y radio 1
symbols(0, 0, 1, inches = F, add = T)
## Dibuja los vectores y coloca los nombres
arrows(0, 0, FR12_INC[,1], FR12_INC[,2], length = .1)
text(FR12_INC[,1], FR12_INC[,2], colnames(X3), pos = 1, offset = .5, col = 4, font = 2)
corrplot(FR12_INC, is.corr = FALSE)
modelo1r_INC <- fa(X3, rotate = "varimax", nfactors = 2, fm = "minres")
fa.diagram(modelo1r_INC)
modelo2r_INC <- fa(X3, rotate = "varimax", nfactors = 3, fm = "minres")
fa.diagram(modelo2r_INC)
Método Varimax
Para dos factores
rotavari1_AES <- varimax(CF12_AES[,1:2])
Tr1_AES <- rotavari1_AES$rotmat
FR12_AES <- CF12_AES[,1:2]%*%Tr1_AES
Para tres factores
#rotavari12_AES <- varimax(CF13_AES[,1:3])
#Tr12_AES <- rotavari12_AES$rotmat
#FR13_AES <- CF13_AES[,1:3]%*%Tr12_AES
Gráfico de las variables en componentes rotados
plot(-1:1, -1:1, type = 'n', asp = 1, xlab = 'Factor rotado 1', ylab = 'Factor rotado 2', main = "Acceso a la Educación Superior")
abline(h = 0, v = 0, lty = 2, col = 3)
## Dibuja un círculo de centro (0,0) y radio 1
symbols(0, 0, 1, inches = F, add = T)
## Dibuja los vectores y coloca los nombres
arrows(0, 0, FR12_AES[,1], FR12_AES[,2], length = .1)
text(FR12_AES[,1], FR12_AES[,2], colnames(X4), pos = 1, offset = .5, col = 4, font = 2)
corrplot(FR12_AES, is.corr = FALSE)
modelo1r_AES <- fa(X4, rotate = "varimax", nfactors = 2, fm = "minres")
fa.diagram(modelo1r_AES)
#modelo2r_AES <- fa(X4, rotate = "varimax", nfactors = 3, fm = "minres")
#fa.diagram(modelo2r_AES)
Estimación de los Coeficientes
Para los factores
CPF1_DP <- (t(CF1_DP)%*%solve(R1))
W1_DP <- t(CPF1_DP)
head(W1_DP)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## AJ 0.2369201 -0.14633661 -0.2938096 -0.6433350 1.5132289
## LE 0.2459830 -0.15847048 0.2321230 -0.4410302 -1.1337331
## LR 0.1987411 -0.30512433 0.8233124 0.8054520 0.5124392
## DPM 0.2034195 0.23140386 -0.7792953 0.9284905 -0.1115156
## DP 0.2544559 -0.06594264 -0.1633970 -0.2757451 -0.7064130
## PJP 0.1108560 0.93814770 0.4418913 -0.1612863 0.1890508
Para dos factores rotados
CPF1r_DP <- (t(FR12_DP)%*%solve(R1))
W1r_DP <- t(CPF1r_DP)
W1r_DP
## [,1] [,2]
## AJ 0.2722530 -0.05851374
## LE 0.2848570 -0.06691048
## LR 0.2894733 -0.22091645
## DPM 0.1141463 0.28617804
## DP 0.2618439 0.02310945
## PJP -0.2098256 0.92107729
Para tres factores rotados
CPF13r_DP <- (t(FR13_DP)%*%solve(R1))
W1r3_DP <- t(CPF13r_DP)
W1r3_DP
## [,1] [,2] [,3]
## AJ 0.36462169 -0.174020480 0.02524969
## LE 0.00477349 -0.012083909 0.37327310
## LR -0.44927468 0.034614926 0.77935630
## DPM 0.70200897 0.006426896 -0.45757017
## DP 0.29162257 -0.053868542 0.08859628
## PJP -0.16835363 1.029131211 -0.01496851
Cálculo de las Puntuaciones Factoriales
Estandarización de las variables
Ze1_DP <- scale(X1)
head(Ze1_DP)
## AJ LE LR DPM DP PJP
## 1 -2.1924543 -0.1731691 -2.3739084 -0.6222148 -1.06323389 0.8607864
## 2 0.8093357 -0.1320782 0.6122316 -0.4338799 0.09175969 0.3400845
## 5 0.2174335 1.0184693 0.9205830 0.8265153 0.75175603 -0.3821794
## 6 0.2174335 0.5253776 -0.1829905 0.7975407 -0.32073801 3.0342970
## 7 1.0630081 0.8951964 0.8881249 0.6381804 1.16425374 -1.0372560
## 8 1.0207294 0.9362874 -0.1829905 0.5367693 0.91675511 1.5326599
Cálculo de las puntuaciones factoriales
PF1_DP <- t(t(W1_DP)%*%t(Ze1_DP))
head(PF1_DP)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## 1 -1.3355198 1.80629008 -0.311508299 -0.84858585 -3.35464000
## 2 0.2537241 -0.07171455 0.709016454 -0.45230706 1.73604042
## 5 0.8020494 -0.69096277 -0.005362424 0.77418594 -1.04937390
## 6 0.5613723 2.99308260 0.679127136 -0.17941971 0.35088887
## 7 0.9596416 -1.47060366 -0.519243027 0.07546535 -0.04093428
## 8 0.9481421 1.25970943 -0.124052438 -1.21859467 -0.02838949
Correlaciones entre las puntuaciones factoriales
cor(PF1_DP)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## Dim.1 1.000000e+00 3.502353e-16 -6.586942e-16 -5.422352e-16 4.492397e-16
## Dim.2 3.502353e-16 1.000000e+00 -1.207511e-16 -5.181995e-16 -1.054140e-15
## Dim.3 -6.586942e-16 -1.207511e-16 1.000000e+00 1.554098e-15 1.931159e-15
## Dim.4 -5.422352e-16 -5.181995e-16 1.554098e-15 1.000000e+00 -7.311591e-15
## Dim.5 4.492397e-16 -1.054140e-15 1.931159e-15 -7.311591e-15 1.000000e+00
Representación de los índices y países en los dos primeros factores
biplot(PF1_DP, CF12_DP, xlab = "Factor 1", ylab = "Factor 2", col = c(6,4), main = "Derechos Personales")
abline(h = 0, v = 0, lty = 2, col = 1)
Cálculo de las puntuaciones factoriales rotadas para 2 y 3 factores
PF12R_DP <- t(t(W1r_DP)%*%t(Ze1_DP))
PF13R_DP <- t(t(W1r3_DP)%*%t(Ze1_DP))
Correlaciones entre las puntuaciones factoriales
cor(PF12R_DP)
## [,1] [,2]
## [1,] 1.000000e+00 -3.227659e-16
## [2,] -3.227659e-16 1.000000e+00
cor(PF13R_DP)
## [,1] [,2] [,3]
## [1,] 1.000000e+00 -2.174664e-17 -1.410098e-15
## [2,] -2.174664e-17 1.000000e+00 -5.654126e-16
## [3,] -1.410098e-15 -5.654126e-16 1.000000e+00
Representación de los índices y países en los dos primeros factores rotados
biplot(PF12R_DP, W1r_DP, xlab = "Factor rotado 1", ylab = "Factor rotado 2", col = c(6,9), main = "Derechos Personales")
abline(h = 0, v = 0, lty = 2, col = 1)
Matriz de correlación reproducida
d1 <- c(VE1_DP)
D1 <- diag(d1)
Rp1 <- (CF1_DP%*%t(CF1_DP)) + D1
Rp1
## AJ LE LR DPM DP PJP
## AJ 1.0000000 0.7362504 0.5092662 0.5647326 0.8061236 0.2182725
## LE 0.7362504 1.0000000 0.6583973 0.4891574 0.8916769 0.2748039
## LR 0.5092662 0.6583973 1.0000000 0.3876862 0.5747960 0.1585661
## DPM 0.5647326 0.4891574 0.3876862 1.0000000 0.6726682 0.3277440
## DP 0.8061236 0.8916769 0.5747960 0.6726682 1.0000000 0.2964032
## PJP 0.2182725 0.2748039 0.1585661 0.3277440 0.2964032 1.0000000
Estimación de los Coeficientes
Para los factores
CPF1_LPE <- (t(CF1_LPE)%*%solve(R2))
W1_LPE <- t(CPF1_LPE)
head(W1_LPE)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## PJC -0.2046338 0.74508195 0.2474786 -0.3790255 -0.3465146
## LJOV 0.2088280 -0.24309216 0.8349054 0.0119751 -0.7775386
## JSEE -0.2339762 0.09589116 0.4016960 1.1389483 0.1992941
## MP -0.2189342 -0.53375448 0.4424129 -0.4845963 0.6550367
## DSA 0.2243605 0.45832399 0.4782864 -0.2006996 0.8574307
## C 0.2819990 0.02121541 -0.1424513 0.4445371 0.3160635
Para dos factores rotados
CPF1r_LPE <- (t(FR12_LPE)%*%solve(R2))
W1r_LPE <- t(CPF1r_LPE)
W1r_LPE
## [,1] [,2]
## PJC 0.36415820 0.6814770
## LJOV -0.01572065 -0.3200872
## JSEE -0.10381010 0.2305720
## MP -0.52612219 -0.2366885
## DSA 0.47815998 0.1782178
## C 0.21923365 -0.1786341
Para tres factores rotados
CPF13r_LPE <- (t(FR13_LPE)%*%solve(R2))
W1r3_LPE <- t(CPF13r_LPE)
W1r3_LPE
## [,1] [,2] [,3]
## PJC 0.2329096 0.76946995 0.10925588
## LJOV -0.3532154 -0.03205259 0.82096377
## JSEE -0.2576723 0.33065021 0.22265463
## MP -0.6604961 -0.15361624 0.26211108
## DSA 0.2431771 0.38943876 0.52759712
## C 0.2580562 -0.18185794 0.02450665
Cálculo de las Puntuaciones Factoriales
Estandarización de las variables
Ze1_LPE <- scale(X2)
head(Ze1_LPE)
## PJC LJOV JSEE MP DSA C
## 1 1.2921980 -3.72448957 2.7580490 0.6727447 -1.3583407 -1.5007618
## 2 0.9890007 -0.51726497 0.9866214 -0.3958058 -3.4088138 -0.6141415
## 5 0.9890007 0.01727247 0.2285883 0.4177718 0.7766299 -0.3012167
## 6 -1.0323146 0.55180990 1.6802388 -0.5865488 -1.5048031 0.0638622
## 7 -1.0828475 0.72998905 -1.0217635 -0.7568551 0.8554943 1.5241779
## 8 -0.9817817 1.17543691 -1.1655482 -0.7597747 1.0244893 1.4720238
Cálculo de las puntuaciones factoriales
PF1_LPE <- t(t(W1_LPE)%*%t(Ze1_LPE))
head(PF1_LPE)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## 1 -2.5627811 1.1191803 -1.8201674 1.8863627 1.79948499
## 2 -1.3925835 -0.4068694 -1.5088025 1.3456048 -3.12007852
## 5 -0.2544225 0.8811775 0.9501882 -0.6065213 0.53378166
## 6 -0.2578498 -1.1174390 -0.1081422 2.9262285 -1.39077058
## 7 1.4005550 -0.2538384 -0.2117404 0.1280581 0.32349256
## 8 1.5303853 -0.2227024 0.2143861 -0.1243644 0.03996858
Correlaciones entre las puntuaciones factoriales
cor(PF1_LPE)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## Dim.1 1.000000e+00 -5.737106e-16 6.169177e-16 -4.515288e-16 -7.863126e-16
## Dim.2 -5.737106e-16 1.000000e+00 -2.525185e-17 -9.900442e-17 4.570370e-16
## Dim.3 6.169177e-16 -2.525185e-17 1.000000e+00 1.327689e-16 -5.963157e-16
## Dim.4 -4.515288e-16 -9.900442e-17 1.327689e-16 1.000000e+00 -2.861400e-16
## Dim.5 -7.863126e-16 4.570370e-16 -5.963157e-16 -2.861400e-16 1.000000e+00
Representación de los índices y países en los dos primeros factores
biplot(PF1_LPE, CF12_LPE, xlab = "Factor 1", ylab = "Factor 2", col = c(6,4), main = "Libertades Personales y de Elección")
abline(h = 0, v = 0, lty = 2, col = 1)
Cálculo de las puntuaciones factoriales rotadas para 2 y 3 factores
PF12R_LPE <- t(t(W1r_LPE)%*%t(Ze1_LPE))
PF13R_LPE <- t(t(W1r3_LPE)%*%t(Ze1_LPE))
Correlaciones entre las puntuaciones factoriales
cor(PF12R_LPE)
## [,1] [,2]
## [1,] 1.00000e+00 3.53669e-16
## [2,] 3.53669e-16 1.00000e+00
cor(PF13R_LPE)
## [,1] [,2] [,3]
## [1,] 1.000000e+00 5.265154e-16 1.131970e-15
## [2,] 5.265154e-16 1.000000e+00 -1.054855e-15
## [3,] 1.131970e-15 -1.054855e-15 1.000000e+00
Representación de los índices y países en los dos primeros factores rotados
biplot(PF12R_LPE, W1r_LPE, xlab = "Factor rotado 1", ylab = "Factor rotado 2", col = c(6,9), main = "Libertades Personales y de Elección")
abline(h = 0, v = 0, lty = 2, col = 1)
Matriz de correlación reproducida
d2 <- c(VE1_LPE)
D2 <- diag(d2)
Rp2 <- (CF1_LPE%*%t(CF1_LPE)) + D2
Rp2
## PJC LJOV JSEE MP DSA C
## PJC 1.0000000 -0.3919926 0.4492242 0.1790781 -0.1690091 -0.6495014
## LJOV -0.3919926 1.0000000 -0.3555215 -0.2753553 0.4260675 0.4559933
## JSEE 0.4492242 -0.3555215 1.0000000 0.4420822 -0.4016237 -0.5279437
## MP 0.1790781 -0.2753553 0.4420822 1.0000000 -0.4043916 -0.6618484
## DSA -0.1690091 0.4260675 -0.4016237 -0.4043916 1.0000000 0.6382444
## C -0.6495014 0.4559933 -0.5279437 -0.6618484 0.6382444 1.0000000
Estimación de los Coeficientes
Para los factores
CPF1_INC <- (t(CF1_INC)%*%solve(R3))
W1_INC <- t(CPF1_INC)
head(W1_INC)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## IPPG 0.2619445 0.03868175 -0.07364629 1.2598688 -0.03104360
## AJGL 0.2868140 -0.16712167 0.21197826 -0.1166896 0.60492824
## AJI 0.1923605 -0.54944713 0.58078064 -0.3142357 -0.05127166
## RSCJ 0.2372819 0.41117720 -0.32925815 -0.4806755 0.84500369
## JSOA 0.1819409 0.54922662 0.56613982 -0.2283703 -0.86639485
## DVCM -0.2299856 0.23479472 0.77441079 0.3500023 0.86257150
Para dos factores rotados
CPF1r_INC <- (t(FR12_INC)%*%solve(R3))
W1r_INC <- t(CPF1r_INC)
W1r_INC
## [,1] [,2]
## IPPG 0.17684849 0.19706808
## AJGL 0.32743127 0.05459576
## AJI 0.49894517 -0.29991405
## RSCJ -0.08004146 0.46793458
## JSOA -0.21079621 0.53881103
## DVCM -0.32692719 0.03377198
Para tres factores rotados
CPF13r_INC <- (t(FR13_INC)%*%solve(R3))
W1r3_INC <- t(CPF13r_INC)
W1r3_INC
## [,1] [,2] [,3]
## IPPG 0.07682224 0.1469631 -0.21916933
## AJGL 0.37785387 0.1036515 -0.04011909
## AJI 0.77259596 -0.1102060 0.25913508
## RSCJ -0.31429095 0.3277188 -0.35721409
## JSOA 0.05646505 0.7150854 0.37514165
## DVCM 0.14830154 0.3232576 0.76239438
Cálculo de las Puntuaciones Factoriales
Estandarización de las variables
Ze1_INC <- scale(X3)
head(Ze1_INC)
## IPPG AJGL AJI RSCJ JSOA DVCM
## 1 -1.46617916 -1.2953787 -1.6583246 -3.8746125 -3.84413153 0.6131919
## 2 -0.05749722 -1.1293045 -0.3244785 -0.4546162 -0.28665129 -0.6618779
## 5 0.32044183 0.8635858 0.6892446 0.7470042 -0.04130783 -0.7852718
## 6 -0.93362867 -1.1957342 0.2624138 -0.1773192 0.32670737 -0.4150902
## 7 0.52659041 1.5610974 1.3828446 0.9318688 0.57205083 -1.0731907
## 8 1.12785709 1.4282381 1.0093676 0.7470042 0.44937910 -0.7441406
Cálculo de las puntuaciones factoriales
PF1_INC <- t(t(W1_INC)%*%t(Ze1_INC))
head(PF1_INC)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## 1 -2.8343922 -2.48954426 -1.5554421 1.7800040 -0.06767489
## 2 -0.4091817 -0.13497882 -0.9487684 0.2136286 -1.37144286
## 5 0.8145462 -0.41054606 -0.3177042 -0.5381221 0.46677813
## 6 -0.4242026 0.02860199 -0.1104110 -1.2538395 -1.49874251
## 7 1.4237003 -0.55495451 0.2812115 -0.9074532 0.22321089
## 8 1.3293898 -0.37041444 0.2380978 0.2149698 0.37722393
Correlaciones entre las puntuaciones factoriales
cor(PF1_INC)
## Dim.1 Dim.2 Dim.3 Dim.4 Dim.5
## Dim.1 1.000000e+00 7.542649e-16 6.762918e-16 1.465037e-16 -2.609596e-16
## Dim.2 7.542649e-16 1.000000e+00 9.309921e-16 6.993260e-16 -2.958687e-16
## Dim.3 6.762918e-16 9.309921e-16 1.000000e+00 -1.595230e-16 -6.731442e-16
## Dim.4 1.465037e-16 6.993260e-16 -1.595230e-16 1.000000e+00 8.996240e-16
## Dim.5 -2.609596e-16 -2.958687e-16 -6.731442e-16 8.996240e-16 1.000000e+00
Representación de los índices y países en los dos primeros factores
biplot(PF1_INC, CF12_INC, xlab = "Factor 1", ylab = "Factor 2", col = c(6,4), main = "Inclusión")
abline(h = 0, v = 0, lty = 2, col = 1)
Cálculo de las puntuaciones factoriales rotadas para 2 y 3 factores
PF12R_INC <- t(t(W1r_INC)%*%t(Ze1_INC))
PF13R_INC <- t(t(W1r3_INC)%*%t(Ze1_INC))
Correlaciones entre las puntuaciones factoriales
cor(PF12R_INC)
## [,1] [,2]
## [1,] 1.000000e+00 -2.735498e-16
## [2,] -2.735498e-16 1.000000e+00
cor(PF13R_INC)
## [,1] [,2] [,3]
## [1,] 1.000000e+00 -1.064441e-16 -3.319223e-17
## [2,] -1.064441e-16 1.000000e+00 7.405302e-16
## [3,] -3.319223e-17 7.405302e-16 1.000000e+00
Representación de los índices y países en los dos primeros factores rotados
biplot(PF12R_INC, W1r_INC, xlab = "Factor rotado 1", ylab = "Factor rotado 2", col = c(6,9), main = "Inclusión")
abline(h = 0, v = 0, lty = 2, col = 1)
Matriz de correlación reproducida
d3 <- c(VE1_INC)
D3 <- diag(d3)
Rp3 <- (CF1_INC%*%t(CF1_INC)) + D3
Rp3
## IPPG AJGL AJI RSCJ JSOA DVCM
## IPPG 1.0000000 0.6365739 0.32286915 0.46329694 0.3844263 -0.4732172
## AJGL 0.6365739 1.0000000 0.69603909 0.58549492 0.3407343 -0.5073536
## AJI 0.3228692 0.6960391 1.00000000 0.04342139 0.0970981 -0.3886395
## RSCJ 0.4632969 0.5854949 0.04342139 1.00000000 0.5250677 -0.4245959
## JSOA 0.3844263 0.3407343 0.09709810 0.52506766 1.0000000 -0.1202037
## DVCM -0.4732172 -0.5073536 -0.38863952 -0.42459585 -0.1202037 1.0000000
Estimación de los Coeficientes
Para los factores
CPF1_AES <- (t(CF1_AES)%*%solve(R4))
W1_AES <- t(CPF1_AES)
head(W1_AES)
## Dim.1 Dim.2 Dim.3 Dim.4
## DC 0.3327651 -0.2145489 1.2886286 -0.04356000
## PMEA 0.3618202 -0.1717567 -0.5973674 1.51364487
## AETE 0.3634444 -0.1119163 -0.6327076 -1.50492797
## UPC 0.1709240 1.0192532 0.1011150 0.08065411
Para dos factores rotados
CPF1r_AES <- (t(FR12_AES)%*%solve(R4))
W1r_AES <- t(CPF1r_AES)
W1r_AES
## [,1] [,2]
## DC 0.3806196 -0.109052996
## PMEA 0.3960456 -0.059682874
## AETE 0.3802807 -0.001933593
## UPC -0.1313964 1.025098514
Para tres factores rotados
#CPF13r_AES <- (t(FR13_AES)%*%solve(R4))
#W1r3_AES <- t(CPF13r_AES)
#W1r3_AES
Cálculo de las Puntuaciones Factoriales
Estandarización de las variables
Ze1_AES <- scale(X4)
head(Ze1_AES)
## DC PMEA AETE UPC
## 1 -0.7906923 -1.5738275 -1.3417952 -0.413697669
## 2 -0.6683994 -0.2250291 0.2642833 -0.397273114
## 5 -0.5613931 0.4493701 1.4653507 0.059329518
## 6 -0.4620301 0.8202896 0.2293685 -0.390703295
## 7 2.2284140 0.9551695 2.0728673 0.683462615
## 8 1.3876501 0.8877295 1.0533566 0.001843575
Cálculo de las puntuaciones factoriales
PF1_AES <- t(t(W1_AES)%*%t(Ze1_AES))
head(PF1_AES)
## Dim.1 Dim.2 Dim.3 Dim.4
## 1 -1.3909362 0.16846363 0.7283775 -0.3618346
## 2 -0.2756913 -0.25244485 -0.9342778 -0.7412677
## 5 0.5184935 -0.06026081 -1.9130056 -1.4958210
## 6 0.1596320 -0.46565780 -1.2700286 0.8850583
## 7 1.9573303 -0.17752670 1.0586003 -1.7156743
## 8 1.1661117 -0.56620099 0.5915846 -0.3018159
Correlaciones entre las puntuaciones factoriales
cor(PF1_AES)
## Dim.1 Dim.2 Dim.3 Dim.4
## Dim.1 1.000000e+00 2.476541e-16 -9.079221e-16 -1.353442e-16
## Dim.2 2.476541e-16 1.000000e+00 3.983068e-16 -2.193549e-15
## Dim.3 -9.079221e-16 3.983068e-16 1.000000e+00 -1.739731e-15
## Dim.4 -1.353442e-16 -2.193549e-15 -1.739731e-15 1.000000e+00
Representación de los índices y países en los dos primeros factores
biplot(PF1_AES, CF12_AES, xlab = "Factor 1", ylab = "Factor 2", col = c(6,4), main = "Acceso a la Educación Superior")
abline(h = 0, v = 0, lty = 2, col = 1)
Cálculo de las puntuaciones factoriales rotadas para 2 y 3 factores
PF12R_AES <- t(t(W1r_AES)%*%t(Ze1_AES))
#PF13R_AES <- t(t(W1r3_AES)%*%t(Ze1_AES))
Correlaciones entre las puntuaciones factoriales
cor(PF12R_AES)
## [,1] [,2]
## [1,] 1.000000e+00 -1.047988e-17
## [2,] -1.047988e-17 1.000000e+00
#cor(PF13R_AES)
Representación de los índices y países en los dos primeros factores rotados
biplot(PF12R_AES, W1r_AES, xlab = "Factor rotado 1", ylab = "Factor rotado 2", col = c(6,9), main = "Acceso a la Educación Superior")
abline(h = 0, v = 0, lty = 2, col = 1)
Matriz de correlación reproducida
d4 <- c(VE1_AES)
D4 <- diag(d4)
Rp4 <- (CF1_AES%*%t(CF1_AES)) + D4
Rp4
## DC PMEA AETE UPC
## DC 1.0000000 0.6367850 0.6285907 0.2000363
## PMEA 0.6367850 1.0000000 0.7797911 0.2386443
## AETE 0.6285907 0.7797911 1.0000000 0.2760881
## UPC 0.2000363 0.2386443 0.2760881 1.0000000
R1 - Rp1
## AJ LE LR DPM DP
## AJ 0.0000000000 0.0102762581 -0.0013944382 0.0035093418 -0.013546546
## LE 0.0102762581 0.0000000000 -0.0067229461 0.0169194413 -0.065311391
## LR -0.0013944382 -0.0067229461 0.0000000000 -0.0022958859 0.008862438
## DPM 0.0035093418 0.0169194413 -0.0022958859 0.0000000000 -0.022303838
## DP -0.0135465465 -0.0653113911 0.0088624382 -0.0223038382 0.000000000
## PJP -0.0002030116 -0.0009787714 0.0001328145 -0.0003342504 0.001290253
## PJP
## AJ -2.030116e-04
## LE -9.787714e-04
## LR 1.328145e-04
## DPM -3.342504e-04
## DP 1.290253e-03
## PJP 1.110223e-16
R2 - Rp2
## PJC LJOV JSEE MP DSA
## PJC 2.220446e-16 3.067609e-03 -0.0059000745 0.032059835 -0.030061045
## LJOV 3.067609e-03 1.110223e-16 -0.0004394927 0.002388116 -0.002239228
## JSEE -5.900074e-03 -4.394927e-04 0.0000000000 -0.004593175 0.004306810
## MP 3.205984e-02 2.388116e-03 -0.0045931748 0.000000000 -0.023402354
## DSA -3.006104e-02 -2.239228e-03 0.0043068104 -0.023402354 0.000000000
## C 7.152374e-02 5.327756e-03 -0.0102471214 0.055680827 -0.052209371
## C
## PJC 0.071523737
## LJOV 0.005327756
## JSEE -0.010247121
## MP 0.055680827
## DSA -0.052209371
## C 0.000000000
R3 - Rp3
## IPPG AJGL AJI RSCJ JSOA
## IPPG 0.000000000 -0.03109153 0.021176790 0.017423670 -0.003173452
## AJGL -0.031091534 0.00000000 -0.086423153 -0.071106549 0.012950960
## AJI 0.021176790 -0.08642315 0.000000000 0.048431463 -0.008821043
## RSCJ 0.017423670 -0.07110655 0.048431463 0.000000000 -0.007257707
## JSOA -0.003173452 0.01295096 -0.008821043 -0.007257707 0.000000000
## DVCM 0.003081362 -0.01257514 0.008565066 0.007047096 -0.001283520
## DVCM
## IPPG 0.003081362
## AJGL -0.012575136
## AJI 0.008565066
## RSCJ 0.007047096
## JSOA -0.001283520
## DVCM 0.000000000
R4 - Rp4
## DC PMEA AETE UPC
## DC 0.000000e+00 0.000000e+00 -5.551115e-16 -5.551115e-17
## PMEA 0.000000e+00 0.000000e+00 -8.881784e-16 4.718448e-16
## AETE -5.551115e-16 -8.881784e-16 0.000000e+00 -9.436896e-16
## UPC -5.551115e-17 4.718448e-16 -9.436896e-16 0.000000e+00
AV_DP <- afe1$eig[1:3,1]
SAV1_DP <- sqrt(AV_DP)
SAV_DP <- as.matrix(SAV1_DP)
t_DP <- sum(SAV_DP)
y_DP <- PF1_DP[,1:3]
IS11_DP <- (1/t_DP) * (y_DP%*%SAV1_DP)
head(IS11_DP)
## [,1]
## 1 -0.288013922
## 2 0.265019321
## 5 0.235806684
## 6 1.228114503
## 7 0.002810187
## 8 0.801535135
summary(IS11_DP)
## V1
## Min. :-1.51572
## 1st Qu.:-0.43838
## Median :-0.03298
## Mean : 0.00000
## 3rd Qu.: 0.45285
## Max. : 1.86396
Reescalado del índice
IDP <- (rescale(IS11_DP, to = c(0, 1), from = range(IS11_DP, na.rm = TRUE, finite = TRUE))) * 100
summary(IDP)
## V1
## Min. : 0.00
## 1st Qu.: 31.88
## Median : 43.87
## Mean : 44.85
## 3rd Qu.: 58.25
## Max. :100.00
head(IDP)
## [,1]
## 1 36.32604
## 2 52.68951
## 5 51.82515
## 6 81.18614
## 7 44.93112
## 8 68.56426
Gráfico histograma y caja
hist(
IDP,
probability = TRUE,
ylab = "N° de países",
main = "INDICE DE DERECHOS PERSONALES",
col = "gold3",
axes = FALSE,
breaks = 5,
xlim=c(0, 100)
)
axis(1) # Añade el eje horizontal
par(new = TRUE)
boxplot(IDP, horizontal = TRUE, axes = FALSE, lwd = 2, col = "olivedrab4")
Gráfico del índice
hist(
IDP,
main = "INDICE DE DERECHOS PERSONALES",
xlab = "Indice", ylab = "N°de Países", labels = TRUE,
border = "darkgreen",
col = "lawngreen",
xlim = c(0, 100), ylim = c(0, 60),
breaks = seq(from = 0, to = 100, by = 20)
)
AV_LPE <- afe2$eig[1:3,1]
SAV1_LPE <- sqrt(AV_LPE)
SAV_LPE <- as.matrix(SAV1_LPE)
t_LPE <- sum(SAV_LPE)
y_LPE <- PF1_LPE[,1:3]
IS11_LPE <- (1/t_LPE) * (y_LPE%*%SAV1_LPE)
head(IS11_LPE)
## [,1]
## 1 -1.4111828
## 2 -1.1597279
## 5 0.3343897
## 6 -0.4493297
## 7 0.5769057
## 8 0.7515927
summary(IS11_LPE)
## V1
## Min. :-1.8461
## 1st Qu.:-0.4288
## Median : 0.1822
## Mean : 0.0000
## 3rd Qu.: 0.4511
## Max. : 0.9277
Reescalado del índice
ILPE <- (rescale(IS11_LPE, to = c(0, 1), from = range(IS11_LPE, na.rm = TRUE, finite = TRUE))) * 100
summary(ILPE)
## V1
## Min. : 0.00
## 1st Qu.: 51.09
## Median : 73.12
## Mean : 66.55
## 3rd Qu.: 82.82
## Max. :100.00
head(ILPE)
## [,1]
## 1 15.67976
## 2 24.74499
## 5 78.60959
## 6 50.35563
## 7 87.35256
## 8 93.65022
Gráfico histograma y caja
hist(
ILPE,
probability = TRUE,
ylab = "N° de países",
main = "INDICE DE LIBERTADES PERSONALES Y DE ELECCIÓN",
col = "gold3",
axes = FALSE,
breaks = 5,
xlim=c(0, 100)
)
axis(1) # Añade el eje horizontal
par(new = TRUE)
boxplot(ILPE, horizontal = TRUE, axes = FALSE, lwd = 2, col = "olivedrab4")
Gráfico del índice
hist(
ILPE,
main = "INDICE DE LIBERTADES PERSONALES Y DE ELECCIÓN",
xlab = "Indice", ylab = "N°de Países", labels = TRUE,
border = "darkgreen",
col = "lawngreen",
xlim = c(0, 100), ylim = c(0, 60),
breaks = seq(from = 0, to = 100, by = 20)
)
AV_INC <- afe3$eig[1:3,1]
SAV1_INC <- sqrt(AV_INC)
SAV_INC <- as.matrix(SAV1_INC)
t_INC <- sum(SAV_INC)
y_INC <- PF1_INC[,1:3]
IS11_INC <- (1/t_INC) * (y_INC%*%SAV1_INC)
head(IS11_INC)
## [,1]
## 1 -2.4390722
## 2 -0.4521332
## 5 0.1931780
## 6 -0.2185720
## 7 0.5776386
## 8 0.5773565
summary(IS11_INC)
## V1
## Min. :-2.43907
## 1st Qu.:-0.37297
## Median : 0.07646
## Mean : 0.00000
## 3rd Qu.: 0.44796
## Max. : 1.03173
Reescalado del índice
IINCLUSION <- (rescale(IS11_INC, to = c(0, 1), from = range(IS11_INC, na.rm = TRUE, finite = TRUE))) * 100
summary(IINCLUSION)
## V1
## Min. : 0.00
## 1st Qu.: 59.53
## Median : 72.48
## Mean : 70.27
## 3rd Qu.: 83.18
## Max. :100.00
head(IINCLUSION)
## [,1]
## 1 0.00000
## 2 57.24721
## 5 75.83976
## 6 63.97652
## 7 86.91675
## 8 86.90862
Gráfico histograma y caja
hist(
IINCLUSION,
probability = TRUE,
ylab = "N° de países",
main = "INDICE DE INCLUSIÓN",
col = "gold3",
axes = FALSE,
breaks = 5,
xlim=c(0, 100)
)
axis(1) # Añade el eje horizontal
par(new = TRUE)
boxplot(IINCLUSION, horizontal = TRUE, axes = FALSE, lwd = 2, col = "olivedrab4")
Gráfico del índice
hist(
IINCLUSION,
main = "INDICE DE INCLUSIÓN",
xlab = "Indice", ylab = "N°de Países", labels = TRUE,
border = "darkgreen",
col = "lawngreen",
xlim = c(0, 100), ylim = c(0, 60),
breaks = seq(from = 0, to = 100, by = 20)
)
AV_AES <- afe4$eig[1:2,1]
SAV1_AES <- sqrt(AV_AES)
SAV_AES <- as.matrix(SAV1_AES)
t_AES <- sum(SAV_AES)
y_AES <- PF1_AES[,1:2]
IS11_AES <- (1/t_AES) * (y_AES%*%SAV1_AES)
head(IS11_AES)
## [,1]
## 1 -0.8074004
## 2 -0.2669923
## 5 0.3019205
## 6 -0.0743548
## 7 1.1584554
## 8 0.5178710
summary(IS11_AES)
## V1
## Min. :-0.91094
## 1st Qu.:-0.53367
## Median :-0.03733
## Mean : 0.00000
## 3rd Qu.: 0.35611
## Max. : 4.54189
Reescalado del índice
IAES <- (rescale(IS11_AES, to = c(0, 1), from = range(IS11_AES, na.rm = TRUE, finite = TRUE))) * 100
summary(IAES)
## V1
## Min. : 0.000
## 1st Qu.: 6.919
## Median : 16.021
## Mean : 16.706
## 3rd Qu.: 23.237
## Max. :100.000
head(IAES)
## [,1]
## 1 1.898787
## 2 11.809388
## 5 22.242742
## 6 15.342189
## 7 37.950826
## 8 26.203082
Gráfico histograma y caja
hist(
IAES,
probability = TRUE,
ylab = "N° de países",
main = "INDICE DE ACCESO A LA EDUCACIÓN SUPERIOR",
col = "gold3",
axes = FALSE,
breaks = 5,
xlim=c(0, 100)
)
axis(1) # Añade el eje horizontal
par(new = TRUE)
boxplot(IAES, horizontal = TRUE, axes = FALSE, lwd = 2, col = "olivedrab4")
Gráfico del índice
hist(
IAES,
main = "INDICE DE ACCESO A LA EDUCACIÓN SUPERIOR",
xlab = "Indice", ylab = "N°de Países", labels = TRUE,
border = "darkgreen",
col = "lawngreen",
xlim = c(0, 100), ylim = c(0, 60),
breaks = seq(from = 0, to = 100, by = 20)
)
Note that the echo = FALSE parameter was added to the
code chunk to prevent printing of the R code that generated the
plot.