Je suis un étudiant diplômé en informatique. J'ai fait une analyse factorielle exploratoire pour un projet de recherche. Mes collègues (qui dirigent le projet) utilisent SPSS, alors que je préfère utiliser R. Cela n'a pas d'importance jusqu'à ce que nous découvrions une divergence majeure entre les deux progiciels statistiques.
Nous utilisons la factorisation des axes principaux comme méthode d'extraction (veuillez noter que je suis bien conscient de la différence entre l'ACP et l'analyse factorielle, et que nous n'utilisons pas l'ACP , du moins pas intentionnellement). D'après ce que j'ai lu, cela devrait correspondre à la méthode « de l' axe principal » dans R, et soit « affacturage axe principal » ou « moindres carrés non pondérés » dans SPSS, d' après la documentation R . Nous utilisons une méthode de rotation oblique (spécifiquement, promax ) parce que nous attendons des facteurs corrélés et interprétons la matrice du modèle .
L'exécution des deux procédures dans R et SPSS, il existe des différences majeures. La matrice de motifs donne différents chargements. Bien que cela donne plus ou moins le même facteur aux relations variables, il existe jusqu'à une différence de 0,15 entre les chargements correspondants, ce qui semble plus que prévu par une implémentation différente de la méthode d'extraction et des rotations promax. Cependant, ce n'est pas la différence la plus surprenante.
La variance cumulée expliquée par les facteurs est d'environ 40% dans les résultats SPSS et 31% dans les résultats R. C'est une énorme différence, et cela a amené mes collègues à vouloir utiliser SPSS au lieu de R. Je n'ai aucun problème avec cela, mais une différence aussi grande me fait penser que nous pourrions interpréter quelque chose de manière incorrecte, ce qui est un problème.
Muddying les eaux encore plus, SPSS signale différents types de variance expliquée lorsque nous exécutons l'affacturage des moindres carrés non pondéré. La proportion de la variance expliquée par les valeurs propres initiales est de 40%, tandis que la proportion de la variance expliquée des sommes d'extraction des charges au carré (SSL) est de 33%. Cela m'amène à penser que les valeurs propres initiales ne sont pas le nombre approprié à regarder (je soupçonne que c'est la variance expliquée avant la rotation, bien qu'elle soit si grande me dépasse). Encore plus déroutant, SPSS affiche également Rotation SSL, mais ne calcule pas le pourcentage de variance expliquée (SPSS me dit que le fait d'avoir des facteurs corrélés signifie que je ne peux pas ajouter de SSL pour trouver la variance totale, ce qui est logique avec les calculs que j'ai vus). Les SSL signalés par R ne correspondent à aucun de ceux-ci, et R me dit qu'il décrit 31% de la variance totale. Les SSL de R correspondent le plus étroitement aux SSL de rotation. Les valeurs propres de R de la matrice de corrélation d'origine correspondent aux valeurs propres initiales de SPSS.
Veuillez également noter que j'ai joué avec différentes méthodes et que les ULS et PAF de SPSS semblent correspondre à la méthode de PA de R la plus proche.
Mes questions spécifiques:
- Quelle différence dois-je attendre entre R et SPSS avec les implémentations d'analyse factorielle?
- Laquelle des sommes des charges carrées de SPSS dois-je interpréter, valeurs propres initiales, extraction ou rotation?
- Y a-t-il d'autres problèmes que j'aurais pu ignorer?
Mes appels à SPSS et R sont les suivants:
SPSS:
FACTOR
/VARIABLES <variables>
/MISSING PAIRWISE
/ANALYSIS <variables>
/PRINT INITIAL KMO AIC EXTRACTION ROTATION
/FORMAT BLANK(.35)
/CRITERIA FACTORS(6) ITERATE(25)
/EXTRACTION ULS
/CRITERIA ITERATE(25)
/ROTATION PROMAX(4).
R:
library(psych)
fa.results <- fa(data, nfactors=6, rotate="promax",
scores=TRUE, fm="pa", oblique.scores=FALSE, max.iter=25)