Factor Analysis using method = pa
Call: fa(r = pisa_efa, nfactors = 3, fm = "pa")
Standardized loadings (pattern matrix) based upon correlation matrix
PA1 PA3 PA2 h2 u2 com
search_info 0.79 0.06 -0.08 0.67 0.33 1.0
asses_info 0.75 0.05 0.06 0.67 0.33 1.0
share_info 0.90 -0.07 0.04 0.74 0.26 1.0
pair_collab 0.81 -0.01 0.04 0.67 0.33 1.0
how_to_share 0.63 0.18 0.06 0.66 0.34 1.2
edit_text 0.51 0.37 -0.07 0.65 0.35 1.9
collect_data 0.17 0.60 0.05 0.60 0.40 1.2
create_pres 0.04 0.81 -0.06 0.65 0.35 1.0
page_web -0.13 0.65 0.27 0.57 0.43 1.4
change_settings 0.11 0.68 0.00 0.60 0.40 1.1
select_app 0.09 0.65 0.10 0.62 0.38 1.1
create_program -0.07 0.09 0.79 0.68 0.32 1.0
identify_error 0.05 0.00 0.87 0.79 0.21 1.0
logical_solution 0.07 -0.03 0.86 0.75 0.25 1.0
PA1 PA3 PA2
SS loadings 3.83 3.06 2.41
Proportion Var 0.27 0.22 0.17
Cumulative Var 0.27 0.49 0.66
Proportion Explained 0.41 0.33 0.26
Cumulative Proportion 0.41 0.74 1.00
With factor correlations of
PA1 PA3 PA2
PA1 1.00 0.79 0.31
PA3 0.79 1.00 0.59
PA2 0.31 0.59 1.00
Mean item complexity = 1.1
Test of the hypothesis that 3 factors are sufficient.
df null model = 91 with the objective function = 10.01 with Chi Square = 3939795
df of the model are 52 and the objective function was 0.3
The root mean square of the residuals (RMSR) is 0.02
The df corrected root mean square of the residuals is 0.03
The harmonic n.obs is 287326 with the empirical chi square 23624.56 with prob < 0
The total n.obs was 393607 with Likelihood Chi Square = 117506.3 with prob < 0
Tucker Lewis Index of factoring reliability = 0.948
RMSEA index = 0.076 and the 90 % confidence intervals are 0.075 0.076
BIC = 116836.3
Fit based upon off diagonal values = 1
Measures of factor score adequacy
PA1 PA3 PA2
Correlation of (regression) scores with factors 0.96 0.95 0.95
Multiple R square of scores with factors 0.93 0.90 0.90
Minimum correlation of possible factor scores 0.85 0.81 0.80
En Table 1 las cargas factoriales se encuentran estandarizadas. Resulta llamativo que todos los loadings son bastante altos, lo cual podría sugerir que los factores están sobre explicando a los indicadores
\(\chi^2\) es un número extremadamente alto y significativo, lo cual no es buen indicio, pero esto puede deberse al gran tamaño de la muestra (N > 200 tienden a dar \(\chi^2\) significativo).
El CFI y el TLI poseen valores que sugieren un buen ajuste del modelo (CFI & TLI > 0.95), aunque el RMSEA contradice los indices de ajuste anteriores (RMSEA < 0.05), lo cual evidencia una incongruencia en el modelo.
El rango varía entre 0.6 y 0.9 aproximadamente. Japon se repite entre los países con menor carga factorial en las variables, y Brunei Darussalam y España también aparecen en varias ocasiones.. Las variables create_pres, collect_data, change_settings y select_app presentan en general un menor puntaje. #### Cleaveland loadings autoeficacia especializada
Se repite Letonia en tres de las categorías y Lituania en 2. Se observa una menor dispersión en los loadings.
2.5.3 SEM por separado para cada país (ahora con fiml)
Este procedimiento se realiza para obtener los indicadores de ajuste por cada CNT
Code
lista_paises<-unique(unlist(pisa$CNT))resultados_lista<-list()summary_lista<-list()for(pais_actualinlista_paises){# Imprimimos el progreso# cat("Procesando:", pais_actual, "...\n")datos_pais<-pisa%>%filter(CNT==pais_actual)fit_pais<-tryCatch({sem(model =multigroup_cfa, data =datos_pais, missing ="fiml")}, error =function(e){cat(" -> ¡ERROR! No se pudo ajustar el modelo para", pais_actual, ". Razón:", conditionMessage(e), "\n")return(NULL)})if(!is.null(fit_pais)){if(lavInspect(fit_pais, "converged")){medidas_ajuste<-fitMeasures(fit_pais)resultados_lista[[pais_actual]]<-medidas_ajuste# cat(" -> Modelo ajustado y resultados guardados.\n")}else{cat(" -> ¡ADVERTENCIA! El modelo para", pais_actual, "no convergió. Se omitirán sus resultados.\n")resultados_lista[[pais_actual]]<-rep(NA)}}}### Test con chile (o otros países)datos_test<-pisa%>%filter(CNT=="CHL")test_model<-sem(model =multigroup_cfa, data =datos_test, missing ="fiml")fitMeasures(test_model)
2.5.6 Chi cuadrado por país (en base al modelo global)
Code
group_summary<-summary(fitgroup)valores_chi<-group_summary$test$standard$stat.groupnombres_paises<-group_summary$data$group.labeldf_chi<-data.frame( Pais =nombres_paises, Chi.Cuadrado =valores_chi)knitr::kable(df_chi)
Se observa un panorama generalizado en las altas cargas factoriales en los indicadores. La gran mayoría ronda por el 0.8, mientras que solamente el indicador que trata sobre crear y mantener una página web tiene un loading > 0.7
El ICC de todos los indicadores es bastante alto. El caso más llamativo es el de la variable relativa a buscar información en dispositivos digitales, donde el 58% de su varianza se debe a diferencias entre países (diferencias en cómo comprenden la escala?).