L'action faNFactors détermine le nombre de facteurs à extraire pour une analyse factorielle. Elle permet d'appliquer simultanément plusieurs critères statistiques (tels que le critère des valeurs propres, l'analyse parallèle ou les critères MAP) et de définir une règle de décision globale (Minimum, Maximum, Moyenne, Médiane) pour suggérer un nombre optimal de facteurs. Cette action est essentielle pour l'exploration dimensionnelle des données.
| Paramètre | Description |
|---|---|
| table | Spécifie la table d'entrée contenant les données à analyser. |
| inputs | Spécifie les variables d'analyse (généralement numériques continues) à utiliser. |
| criteria | Paramètre obligatoire. Définit une liste de méthodes pour déterminer le nombre de facteurs (ex: 'EIGENVALUE' pour Kaiser, 'PARALLEL' pour l'analyse parallèle). |
| nFactors | Définit la règle de synthèse (MIN, MAX, MEAN, MEDIAN) à appliquer sur les résultats des différents critères actifs pour recommander un nombre final. |
| priors | Spécifie la méthode d'estimation des communalisés a priori (par défaut 'SMC' - Squared Multiple Correlations). |
| corrOut | Spécifie les paramètres de la table de sortie pour la matrice de corrélation. |
| display | Contrôle les tables de résultats qui sont renvoyées au client pour affichage. |
Génération d'un jeu de données 'factordata' avec 10 variables corrélées basées sur 2 facteurs latents, pour démontrer l'extraction.
| 1 | |
| 2 | DATA casuser.factordata; |
| 3 | array x{10} x1-x10; |
| 4 | DO i=1 to 1000; |
| 5 | f1 = rannor(1); |
| 6 | f2 = rannor(1); |
| 7 | DO j=1 to 5; |
| 8 | x{j} = f1 + 0.5*rannor(1); |
| 9 | END; |
| 10 | DO j=6 to 10; |
| 11 | x{j} = f2 + 0.5*rannor(1); |
| 12 | END; |
| 13 | OUTPUT; |
| 14 | END; |
| 15 | drop i f1 f2 j; |
| 16 | |
| 17 | RUN; |
| 18 |
Détermination du nombre de facteurs en utilisant uniquement le critère des valeurs propres supérieures à 1 (seuil par défaut).
| 1 | |
| 2 | PROC CAS; |
| 3 | factorAnalysis.faNFactors TABLE={name="factordata", caslib="casuser"} inputs={"x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10"} criteria={{type="EIGENVALUE"}}; |
| 4 | |
| 5 | RUN; |
| 6 |
Utilisation combinée de l'analyse parallèle (avec simulations), du critère MAP et des valeurs propres > 0.8. La décision finale est la médiane des suggestions. Les priors sont fixés à SMC.
| 1 | |
| 2 | PROC CAS; |
| 3 | factorAnalysis.faNFactors TABLE={name="factordata", caslib="casuser"} inputs={"x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10"} criteria={{type="EIGENVALUE", threshold=0.8}, {type="PARALLEL", alpha=0.01, nSimulations=500, seed=123}, {type="MAP2"}} nFactors="MEDIAN" priors={type="SMC"} outputTables={names={"Eigenvalues", "ParallelAnalysis", "Map"}}; |
| 4 | |
| 5 | RUN; |
| 6 |