J'ai calculé des matrices de corrélation polychorique pour le même cadre de données (20 variables ordinales, 190 valeurs manquantes) dans R, en utilisant trois paquets différents et les coefficients pour les mêmes variables sont légèrement différents les uns des autres.
J'ai utilisé la fonction lavCor de " lavaan "(j'ai listé les variables ordinales lors de l'appel de la fonction), fonction polychorique de " psych " (1.9.1) (a pris les rhos), et la fonction cor_auto de " qgraph "(qui est censé calculer automatiquement les corrélations polychoriques pour les données ordinales). Je suis confus car je pensais qu'ils étaient censés donner exactement les mêmes résultats. J'ai lu les documentations des paquets mais je n'ai rien trouvé qui m'aide à comprendre pourquoi. Quelqu'un peut-il me dire pourquoi cela se produit ? Je suis sûr qu'il me manque une petite différence entre les deux, mais je n'arrive pas à la comprendre.
PS : Je suppose que cela a pu se produire parce que le paquet psych ajuste les valeurs manquantes (j'en ai 190) en utilisant la correction pour la continuité, mais je ne comprends toujours pas pourquoi qgraph donne des résultats différents de ceux de lavaan puisque qgraph dit utiliser la fonction lavCor de lavaan pour calculer les corrélations polychoriques.
Merci !
depanx<-data[1:20]
cor.depanx<-cor_auto(depanx)
polychor<-polychoric(depanx)
polymat<-polychor$rho
lav<-lavCor(depanx,ordered=c("unh","enj","trd","rst","noG","cry","cnc","htd","bdp","lnl","lov",
"cmp","wrg","pst","sch","dss","hlt","bad","ftr","oth"))
# as a result, matrices "cor.depanx", "polymat", and "lav" are different from each other.