Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
The FACTOR Procedure

Example 26.2: Principal Factor Analysis

The following example uses the data presented in Example 26.1, and performs a principal factor analysis with squared multiple correlations for the prior communality estimates (PRIORS=SMC).

To help determine if the common factor model is appropriate, Kaiser's measure of sampling adequacy (MSA) is requested, and the residual correlations and partial correlations are computed (RESIDUAL). To help determine the number of factors, a scree plot (SCREE) of the eigenvalues is displayed, and the PREPLOT option plots the unrotated factor pattern.

The ROTATE= and REORDER options are specified to enhance factor interpretability. The ROTATE=PROMAX option produces an orthogonal varimax prerotation followed by an oblique rotation, and the REORDER option reorders the variables according to their largest factor loadings. The PLOT procedure is used to produce a plot of the reference structure. An OUTSTAT= data set is created by PROC FACTOR and displayed in Output 26.2.15.

This example also demonstrates how to define a picture format with the FORMAT procedure and use the PRINT procedure to produce customized factor pattern output. Small elements of the Rotated Factor Pattern matrix are displayed as `.'. Large values are multiplied by 100, truncated at the decimal, and flagged with an asterisk `*'. Intermediate values are scaled by 100 and truncated. For more information on picture formats, refer to "Formats" in SAS Language Reference: Dictionary.

   ods output ObliqueRotFactPat = rotfacpat;
   proc factor data=SocioEconomics priors=smc msa scree residual preplot
        rotate=promax reorder plot
        outstat=fact_all;
      title3 'Principal Factor Analysis with Promax Rotation';

   proc print;
      title3 'Factor Output Data Set';
   run;

   proc format;                        
      picture FuzzFlag         
      low  - 0.1  = '  .  '                  
      0.10 - 0.90 = '009  ' (mult = 100)          
      0.90 - high = '009 *' (mult = 100);           
   run;                                

   proc print data = rotfacpat;
      format factor1-factor2 FuzzFlag.;
   run;

Output 26.2.1: Principal Factor Analysis

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Initial Factor Method: Principal Factors

Partial Correlations Controlling all other Variables
  Population School Employment Services HouseValue
Population 1.00000 -0.54465 0.97083 0.09612 0.15871
School -0.54465 1.00000 0.54373 0.04996 0.64717
Employment 0.97083 0.54373 1.00000 0.06689 -0.25572
Services 0.09612 0.04996 0.06689 1.00000 0.59415
HouseValue 0.15871 0.64717 -0.25572 0.59415 1.00000

Kaiser's Measure of Sampling Adequacy: Overall MSA = 0.57536759
Population School Employment Services HouseValue
0.47207897 0.55158839 0.48851137 0.80664365 0.61281377

2 factors will be retained by the PROPORTION criterion.


Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Initial Factor Method: Principal Factors

Prior Communality Estimates: SMC
Population School Employment Services HouseValue
0.96859160 0.82228514 0.96918082 0.78572440 0.84701921

Eigenvalues of the Reduced Correlation Matrix:
Total = 4.39280116 Average = 0.87856023
  Eigenvalue Difference Proportion Cumulative
1 2.73430084 1.01823217 0.6225 0.6225
2 1.71606867 1.67650586 0.3907 1.0131
3 0.03956281 0.06408626 0.0090 1.0221
4 -.02452345 0.04808427 -0.0056 1.0165
5 -.07260772   -0.0165 1.0000

2 factors will be retained by the PROPORTION criterion.


Output 26.2.1 displays the results of the principal factor extraction.

If the data are appropriate for the common factor model, the partial correlations controlling the other variables should be small compared to the original correlations. The partial correlation between the variables School and HouseValue, for example, is 0.65, slightly less than the original correlation of 0.86. The partial correlation between Population and School is -0.54, which is much larger in absolute value than the original correlation; this is an indication of trouble. Kaiser's MSA is a summary, for each variable and for all variables together, of how much smaller the partial correlations are than the original correlations. Values of 0.8 or 0.9 are considered good, while MSAs below 0.5 are unacceptable. The variables Population, School, and Employment have very poor MSAs. Only the Services variable has a good MSA. The overall MSA of 0.58 is sufficiently poor that additional variables should be included in the analysis to better define the common factors. A commonly used rule is that there should be at least three variables per factor. In the following analysis, there seems to be two common factors in these data, so more variables are needed for a reliable analysis.

The SMCs are all fairly large; hence, the factor loadings do not differ greatly from the principal component analysis.

The eigenvalues show clearly that two common factors are present. There are two large positive eigenvalues that together account for 101.31% of the common variance, which is as close to 100% as you are ever likely to get without iterating. The scree plot displays a sharp bend at the third eigenvalue, reinforcing the preceding conclusion.

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Initial Factor Method: Principal Factors

Scree Plot of Eigenvalues                                                       
     |                                                                          
   3 +                                                                          
     |                                                                          
     |                  1                                                       
     |                                                                          
     |                                                                          
     |                                                                          
   2 +                                                                          
E    |                                                                          
i    |                              2                                           
g    |                                                                          
e    |                                                                          
n    |                                                                          
v  1 +                                                                          
a    |                                                                          
l    |                                                                          
u    |                                                                          
e    |                                                                          
s    |                                                                          
   0 +                                          3           4           5       
     |                                                                          
     |                                                                          
     |                                                                          
     |                                                                          
     |                                                                          
  -1 +                                                                          
     |                                                                          
     -------+-----------+-----------+-----------+-----------+-----------+-------
            0           1           2           3           4           5       
                                                                                
                                        Number                                  

Output 26.2.2: Factor Pattern Matrix and Communalities

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Initial Factor Method: Principal Factors

Factor Pattern
  Factor1 Factor2
Services 0.87899 -0.15847
HouseValue 0.74215 -0.57806
Employment 0.71447 0.67936
School 0.71370 -0.55515
Population 0.62533 0.76621

Variance Explained by Each
Factor
Factor1 Factor2
2.7343008 1.7160687

Final Communality Estimates: Total = 4.450370
Population School Employment Services HouseValue
0.97811334 0.81756387 0.97199928 0.79774304 0.88494998


As displayed in Output 26.2.2, the principal factor pattern is similar to the principal component pattern seen in Example 26.1. For example, the variable Services has the largest loading on the first factor, and the Population variable has the smallest. The variables Population and Employment have large positive loadings on the second factor, and the HouseValue and School variables have large negative loadings.

The final communality estimates are all fairly close to the priors. Only the communality for the variable HouseValue increased appreciably, from 0.847019 to 0.884950. Nearly 100% of the common variance is accounted for. The residual correlations (off-diagonal elements) are low, the largest being 0.03 (Output 26.2.3). The partial correlations are not quite as impressive, since the uniqueness values are also rather small. These results indicate that the SMCs are good but not quite optimal communality estimates.

Output 26.2.3: Residual and Partial Correlations

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Initial Factor Method: Principal Factors

Residual Correlations With Uniqueness on the Diagonal
  Population School Employment Services HouseValue
Population 0.02189 -0.01118 0.00514 0.01063 0.00124
School -0.01118 0.18244 0.02151 -0.02390 0.01248
Employment 0.00514 0.02151 0.02800 -0.00565 -0.01561
Services 0.01063 -0.02390 -0.00565 0.20226 0.03370
HouseValue 0.00124 0.01248 -0.01561 0.03370 0.11505

Root Mean Square Off-Diagonal Residuals: Overall = 0.01693282
Population School Employment Services HouseValue
0.00815307 0.01813027 0.01382764 0.02151737 0.01960158

Partial Correlations Controlling Factors
  Population School Employment Services HouseValue
Population 1.00000 -0.17693 0.20752 0.15975 0.02471
School -0.17693 1.00000 0.30097 -0.12443 0.08614
Employment 0.20752 0.30097 1.00000 -0.07504 -0.27509
Services 0.15975 -0.12443 -0.07504 1.00000 0.22093
HouseValue 0.02471 0.08614 -0.27509 0.22093 1.00000

Output 26.2.4: Root Mean Square Off-Diagonal Partials

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Initial Factor Method: Principal Factors

Root Mean Square Off-Diagonal Partials: Overall = 0.18550132
Population School Employment Services HouseValue
0.15850824 0.19025867 0.23181838 0.15447043 0.18201538

Output 26.2.5: Unrotated Factor Pattern Plot

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Initial Factor Method: Principal Factors

Plot of Factor Pattern for Factor1 and Factor2                                  
                                                                                
                                     Factor1                                    
                                        1                                       
                                                                                
                                   D   .9                                       
                                                                                
                                       .8                                       
                      E                                                         
                       B               .7                   C                   
                                                              A                 
                                       .6                                       
                                                                                
                                       .5                                       
                                                                                
                                       .4                                       
                                                                                
                                       .3                                       
                                                                                
                                       .2                                       
                                                                        F       
                                       .1                               a       
                                                                        c       
        -1 -.9-.8-.7-.6-.5-.4-.3-.2-.1  0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1.0t       
                                                                        o       
                                      -.1                               r       
                                                                        2       
                                      -.2                                       
                                                                                
                                      -.3                                       
                                                                                
                                      -.4                                       
                                                                                
                                      -.5                                       
                                                                                
                                      -.6                                       
                                                                                
                                      -.7                                       
                                                                                
                                      -.8                                       
                                                                                
                                      -.9                                       
                                                                                
                                       -1                                       
                                                                                
       Population=A  School=B      Employment=C  Services=D    HouseValue=E     


As displayed in Output 26.2.5, the unrotated factor pattern reveals two tight clusters of variables, with the variables HouseValue and School at the negative end of Factor2 axis and the variables Employment and Population at the positive end. The Services variable is in between but closer to the HouseValue and School variables. A good rotation would put the reference axes through the two clusters.

Output 26.2.6: Varimax Rotation: Transform Matrix and Rotated Pattern

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Prerotation Method: Varimax

Orthogonal Transformation Matrix
  1 2
1 0.78895 0.61446
2 -0.61446 0.78895

Rotated Factor Pattern
  Factor1 Factor2
HouseValue 0.94072 -0.00004
School 0.90419 0.00055
Services 0.79085 0.41509
Population 0.02255 0.98874
Employment 0.14625 0.97499

Output 26.2.7: Varimax Rotation: Variance Explained and Communalities

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Prerotation Method: Varimax

Variance Explained by Each
Factor
Factor1 Factor2
2.3498567 2.1005128

Final Communality Estimates: Total = 4.450370
Population School Employment Services HouseValue
0.97811334 0.81756387 0.97199928 0.79774304 0.88494998

Output 26.2.8: Varimax Rotated Factor Pattern Plot

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Prerotation Method: Varimax

Plot of Factor Pattern for Factor1 and Factor2                                  
                                                                                
                                     Factor1                                    
                                        1                                       
                                       E                                        
                                       .B                                       
                                                                                
                                       .8           D                           
                                                                                
                                       .7                                       
                                                                                
                                       .6                                       
                                                                                
                                       .5                                       
                                                                                
                                       .4                                       
                                                                                
                                       .3                                       
                                                                                
                                       .2                                       
                                                                     C  F       
                                       .1                               a       
                                                                        c       
        -1 -.9-.8-.7-.6-.5-.4-.3-.2-.1  0 .1 .2 .3 .4 .5 .6 .7 .8 .9 A.0t       
                                                                        o       
                                      -.1                               r       
                                                                        2       
                                      -.2                                       
                                                                                
                                      -.3                                       
                                                                                
                                      -.4                                       
                                                                                
                                      -.5                                       
                                                                                
                                      -.6                                       
                                                                                
                                      -.7                                       
                                                                                
                                      -.8                                       
                                                                                
                                      -.9                                       
                                                                                
                                       -1                                       
                                                                                
       Population=A  School=B      Employment=C  Services=D    HouseValue=E     


Output 26.2.6, Output 26.2.7 and Output 26.2.8 display the results of the varimax rotation. This rotation puts one axis through the variables HouseValue and School but misses the Population and Employment variables slightly.

Output 26.2.9: Promax Rotation: Procrustean Target and Transform Matrix

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Rotation Method: Promax

Target Matrix for Procrustean Transformation
  Factor1 Factor2
HouseValue 1.00000 -0.00000
School 1.00000 0.00000
Services 0.69421 0.10045
Population 0.00001 1.00000
Employment 0.00326 0.96793

Procrustean Transformation Matrix
  1 2
1 1.04116598 -0.0986534
2 -0.1057226 0.96303019

Output 26.2.10: Promax Rotation: Oblique Transform Matrix and Correlation

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Rotation Method: Promax

Normalized Oblique Transformation
Matrix
  1 2
1 0.73803 0.54202
2 -0.70555 0.86528

Inter-Factor Correlations
  Factor1 Factor2
Factor1 1.00000 0.20188
Factor2 0.20188 1.00000

Output 26.2.11: Promax Rotation: Rotated Factor Pattern and Correlations

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Rotation Method: Promax

Rotated Factor Pattern (Standardized
Regression Coefficients)
  Factor1 Factor2
HouseValue 0.95558485 -0.0979201
School 0.91842142 -0.0935214
Services 0.76053238 0.33931804
Population -0.0790832 1.00192402
Employment 0.04799 0.97509085

Reference Axis Correlations
  Factor1 Factor2
Factor1 1.00000 -0.20188
Factor2 -0.20188 1.00000

Output 26.2.12: Promax Rotation: Variance Explained and Factor Structure

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Rotation Method: Promax

Reference Structure (Semipartial Correlations)
  Factor1 Factor2
HouseValue 0.93591 -0.09590
School 0.89951 -0.09160
Services 0.74487 0.33233
Population -0.07745 0.98129
Employment 0.04700 0.95501

Variance Explained by Each
Factor Eliminating Other
Factors
Factor1 Factor2
2.2480892 2.0030200

Factor Structure (Correlations)
  Factor1 Factor2
HouseValue 0.93582 0.09500
School 0.89954 0.09189
Services 0.82903 0.49286
Population 0.12319 0.98596
Employment 0.24484 0.98478

Output 26.2.13: Promax Rotation: Variance Explained and Final Communalities

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Rotation Method: Promax

Variance Explained by Each
Factor Ignoring Other Factors
Factor1 Factor2
2.4473495 2.2022803

Final Communality Estimates: Total = 4.450370
Population School Employment Services HouseValue
0.97811334 0.81756387 0.97199928 0.79774304 0.88494998

Output 26.2.14: Promax Rotated Factor Pattern Plot

Principal Factor Analysis with Promax Rotation

The FACTOR Procedure
Rotation Method: Promax

Plot of Reference Structure for Factor1 and Factor2                             
Reference Axis Correlation = -0.2019  Angle = 101.6471                          
                                                                                
                                     Factor1                                    
                                        1                                       
                                     E                                          
                                     B .9                                       
                                                                                
                                       .8                                       
                                                 D                              
                                       .7                                       
                                                                                
                                       .6                                       
                                                                                
                                       .5                                       
                                                                                
                                       .4                                       
                                                                                
                                       .3                                       
                                                                                
                                       .2                                       
                                                                        F       
                                       .1                               a       
                                                                    C   c       
        -1 -.9-.8-.7-.6-.5-.4-.3-.2-.1  0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1.0t       
                                                                        o       
                                      -.1                            A  r       
                                                                        2       
                                      -.2                                       
                                                                                
                                      -.3                                       
                                                                                
                                      -.4                                       
                                                                                
                                      -.5                                       
                                                                                
                                      -.6                                       
                                                                                
                                      -.7                                       
                                                                                
                                      -.8                                       
                                                                                
                                      -.9                                       
                                                                                
                                       -1                                       
                                                                                
       Population=A  School=B      Employment=C  Services=D    HouseValue=E     


The oblique promax rotation (Output 26.2.9 through Output 26.2.14) places an axis through the variables Population and Employment but misses the HouseValue and School variables. Since an independent-cluster solution would be possible if it were not for the variable Services, a Harris-Kaiser rotation weighted by the Cureton-Mulaik technique should be used.

Output 26.2.15: Output Data Set

Factor Output Data Set

Obs _TYPE_ _NAME_ Population School Employment Services HouseValue
1 MEAN   6241.67 11.4417 2333.33 120.833 17000.00
2 STD   3439.99 1.7865 1241.21 114.928 6367.53
3 N   12.00 12.0000 12.00 12.000 12.00
4 CORR Population 1.00 0.0098 0.97 0.439 0.02
5 CORR School 0.01 1.0000 0.15 0.691 0.86
6 CORR Employment 0.97 0.1543 1.00 0.515 0.12
7 CORR Services 0.44 0.6914 0.51 1.000 0.78
8 CORR HouseValue 0.02 0.8631 0.12 0.778 1.00
9 COMMUNAL   0.98 0.8176 0.97 0.798 0.88
10 PRIORS   0.97 0.8223 0.97 0.786 0.85
11 EIGENVAL   2.73 1.7161 0.04 -0.025 -0.07
12 UNROTATE Factor1 0.63 0.7137 0.71 0.879 0.74
13 UNROTATE Factor2 0.77 -0.5552 0.68 -0.158 -0.58
14 RESIDUAL Population 0.02 -0.0112 0.01 0.011 0.00
15 RESIDUAL School -0.01 0.1824 0.02 -0.024 0.01
16 RESIDUAL Employment 0.01 0.0215 0.03 -0.006 -0.02
17 RESIDUAL Services 0.01 -0.0239 -0.01 0.202 0.03
18 RESIDUAL HouseValue 0.00 0.0125 -0.02 0.034 0.12
19 PRETRANS Factor1 0.79 -0.6145 . . .
20 PRETRANS Factor2 0.61 0.7889 . . .
21 PREROTAT Factor1 0.02 0.9042 0.15 0.791 0.94
22 PREROTAT Factor2 0.99 0.0006 0.97 0.415 -0.00
23 TRANSFOR Factor1 0.74 -0.7055 . . .
24 TRANSFOR Factor2 0.54 0.8653 . . .
25 FCORR Factor1 1.00 0.2019 . . .
26 FCORR Factor2 0.20 1.0000 . . .
27 PATTERN Factor1 -0.08 0.9184 0.05 0.761 0.96
28 PATTERN Factor2 1.00 -0.0935 0.98 0.339 -0.10
29 RCORR Factor1 1.00 -0.2019 . . .
30 RCORR Factor2 -0.20 1.0000 . . .
31 REFERENC Factor1 -0.08 0.8995 0.05 0.745 0.94
32 REFERENC Factor2 0.98 -0.0916 0.96 0.332 -0.10
33 STRUCTUR Factor1 0.12 0.8995 0.24 0.829 0.94
34 STRUCTUR Factor2 0.99 0.0919 0.98 0.493 0.09


The output data set displayed in Output 26.2.15 can be used for Harris-Kaiser rotation by deleting observations with _TYPE_='PATTERN' and _TYPE_='FCORR', which are for the promax-rotated factors, and changing _TYPE_='UNROTATE' to _TYPE_='PATTERN'.

Output 26.2.16 displays the rotated factor pattern output formatted with the picture format `FuzzFlag'.

Output 26.2.16: Picture Format Output

Obs RowName Factor1 Factor2
1 HouseValue 95 * .
2 School 91 * .
3 Services 76 33
4 Population . 100 *
5 Employment . 97 *

The following statements produce Output 26.2.17:

   data fact2(type=factor);
      set fact_all;
      if _TYPE_ in('PATTERN' 'FCORR') then delete;
      if _TYPE_='UNROTATE' then _TYPE_='PATTERN';

   proc factor rotate=hk norm=weight reorder plot;
      title3 'Harris-Kaiser Rotation with Cureton-Mulaik Weights';
   run;

The results of the Harris-Kaiser rotation are displayed in Output 26.2.17:

Output 26.2.17: Harris-Kaiser Rotation

Harris-Kaiser Rotation with Cureton-Mulaik Weights

The FACTOR Procedure
Rotation Method: Harris-Kaiser

Variable Weights for Rotation
Population School Employment Services HouseValue
0.95982747 0.93945424 0.99746396 0.12194766 0.94007263

Oblique Transformation Matrix
  1 2
1 0.73537 0.61899
2 -0.68283 0.78987

Inter-Factor Correlations
  Factor1 Factor2
Factor1 1.00000 0.08358
Factor2 0.08358 1.00000


Harris-Kaiser Rotation with Cureton-Mulaik Weights

The FACTOR Procedure
Rotation Method: Harris-Kaiser

Rotated Factor Pattern (Standardized
Regression Coefficients)
  Factor1 Factor2
HouseValue 0.94048 0.00279
School 0.90391 0.00327
Services 0.75459 0.41892
Population -0.06335 0.99227
Employment 0.06152 0.97885

Reference Axis Correlations
  Factor1 Factor2
Factor1 1.00000 -0.08358
Factor2 -0.08358 1.00000

Reference Structure (Semipartial Correlations)
  Factor1 Factor2
HouseValue 0.93719 0.00278
School 0.90075 0.00326
Services 0.75195 0.41745
Population -0.06312 0.98880
Employment 0.06130 0.97543

Variance Explained by Each
Factor Eliminating Other
Factors
Factor1 Factor2
2.2628537 2.1034731


Harris-Kaiser Rotation with Cureton-Mulaik Weights

The FACTOR Procedure
Rotation Method: Harris-Kaiser

Factor Structure (Correlations)
  Factor1 Factor2
HouseValue 0.94071 0.08139
School 0.90419 0.07882
Services 0.78960 0.48198
Population 0.01958 0.98698
Employment 0.14332 0.98399

Variance Explained by Each
Factor Ignoring Other Factors
Factor1 Factor2
2.3468965 2.1875158

Final Communality Estimates: Total = 4.450370
Population School Employment Services HouseValue
0.97811334 0.81756387 0.97199928 0.79774304 0.88494998


Harris-Kaiser Rotation with Cureton-Mulaik Weights

The FACTOR Procedure
Rotation Method: Harris-Kaiser

Plot of Reference Structure for Factor1 and Factor2                             
Reference Axis Correlation = -0.0836  Angle = 94.7941                           
                                                                                
                                     Factor1                                    
                                        1                                       
                                        E                                       
                                       .B                                       
                                                                                
                                       .8                                       
                                                    D                           
                                       .7                                       
                                                                                
                                       .6                                       
                                                                                
                                       .5                                       
                                                                                
                                       .4                                       
                                                                                
                                       .3                                       
                                                                                
                                       .2                                       
                                                                        F       
                                       .1                               a       
                                                                     C  c       
        -1 -.9-.8-.7-.6-.5-.4-.3-.2-.1  0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1.0t       
                                                                     A  o       
                                      -.1                               r       
                                                                        2       
                                      -.2                                       
                                                                                
                                      -.3                                       
                                                                                
                                      -.4                                       
                                                                                
                                      -.5                                       
                                                                                
                                      -.6                                       
                                                                                
                                      -.7                                       
                                                                                
                                      -.8                                       
                                                                                
                                      -.9                                       
                                                                                
                                       -1                                       
                                                                                
       Population=A  School=B      Employment=C  Services=D    HouseValue=E     


In the results of the Harris-Kaiser rotation, the variable Services receives a small weight, and the axes are placed as desired.

Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
Top
Top

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.