Example 35.4 Using Confidence Intervals to Locate Salient Factor Loadings
This example illustrates how you can use the standard errors and confidence intervals to understand the pattern of factor
loadings under the maximum likelihood estimation. There are nine tests and you want a three-factor solution (N=3) for a correlation
matrix based on 200 observations. The following statements define the input data set and specify the desirable analysis by
the FACTOR procedure:
data test(type=corr);
title 'Quartimin-Rotated Factor Solution with Standard Errors';
input _name_ $ test1-test9;
_type_ = 'corr';
datalines;
Test1 1 .561 .602 .290 .404 .328 .367 .179 -.268
Test2 .561 1 .743 .414 .526 .442 .523 .289 -.399
Test3 .602 .743 1 .286 .343 .361 .679 .456 -.532
Test4 .290 .414 .286 1 .677 .446 .412 .400 -.491
Test5 .404 .526 .343 .677 1 .584 .408 .299 -.466
Test6 .328 .442 .361 .446 .584 1 .333 .178 -.306
Test7 .367 .523 .679 .412 .408 .333 1 .711 -.760
Test8 .179 .289 .456 .400 .299 .178 .711 1 -.725
Test9 -.268 -.399 -.532 -.491 -.466 -.306 -.760 -.725 1
;
title2 'A nine-variable-three-factor example';
proc factor data=test method=ml reorder rotate=quartimin
nobs=200 n=3 se cover=.45 alpha=.1;
run;
In the PROC FACTOR statement, you apply quartimin rotation with (default) Kaiser normalization. You define loadings with magnitudes
greater than 0.45 to be salient (COVER=0.45) and use 90% confidence intervals (ALPHA=0.1) to judge the salience. The REORDER option is specified so that variables that have similar loadings with factors are clustered together.
After the quartimin rotation, the correlation matrix for factors is shown in Output 35.4.1.
Output 35.4.1: Quartimin-Rotated Factor Solution with Standard Errors
|
0.41283 |
0.06267 |
0.30475 |
0.51041 |
|
0.38304 |
0.06060 |
0.27919 |
0.47804 |
|
0.41283 |
0.06267 |
0.30475 |
0.51041 |
|
|
0.47006 |
0.05116 |
0.38177 |
0.54986 |
|
0.38304 |
0.06060 |
0.27919 |
0.47804 |
|
0.47006 |
0.05116 |
0.38177 |
0.54986 |
|
|
The factors are medium to highly correlated. The confidence intervals seem to be very wide, suggesting that the estimation
of factor correlations might not be very accurate for this sample size. For example, the 90% confidence interval for the correlation
between Factor1
and Factor2
is (0.30, 0.51), a range of 0.21. You might need a larger sample to get a narrower interval, or you might need a better estimation.
Next, coverage displays for factor loadings are shown in Output 35.4.2.
Output 35.4.2: Using the Rotated Factor Pattern to Interpret the Factors
0.86810 |
0.03282 |
0.80271 |
0.91286 |
0*[] |
|
-0.05045 |
0.03185 |
-0.10265 |
0.00204 |
*[0] |
|
0.00114 |
0.03087 |
-0.04959 |
0.05187 |
[0]* |
|
0.73204 |
0.04434 |
0.65040 |
0.79697 |
0*[] |
|
0.27296 |
0.05292 |
0.18390 |
0.35758 |
0[]* |
|
0.01098 |
0.03838 |
-0.05211 |
0.07399 |
[0]* |
|
-0.79654 |
0.03948 |
-0.85291 |
-0.72180 |
[]*0 |
|
-0.01230 |
0.04225 |
-0.08163 |
0.05715 |
*[0] |
|
-0.17307 |
0.04420 |
-0.24472 |
-0.09955 |
*[]0 |
|
0.27715 |
0.05489 |
0.18464 |
0.36478 |
0[]* |
|
0.91156 |
0.04877 |
0.78650 |
0.96481 |
0*[] |
|
-0.19727 |
0.02981 |
-0.24577 |
-0.14778 |
*[]0 |
|
0.01063 |
0.05060 |
-0.07248 |
0.09359 |
[0]* |
|
0.71540 |
0.05148 |
0.61982 |
0.79007 |
0*[] |
|
0.20500 |
0.05496 |
0.11310 |
0.29342 |
0[]* |
|
-0.07356 |
0.04245 |
-0.14292 |
-0.00348 |
*[]0 |
|
0.63815 |
0.05380 |
0.54114 |
0.71839 |
0*[] |
|
0.13983 |
0.05597 |
0.04682 |
0.23044 |
0[]* |
|
0.00863 |
0.04394 |
-0.06356 |
0.08073 |
[0]* |
|
0.03234 |
0.04387 |
-0.03986 |
0.10421 |
[0]* |
|
0.91282 |
0.04509 |
0.80030 |
0.96323 |
0*[] |
|
0.22357 |
0.05956 |
0.12366 |
0.31900 |
0[]* |
|
-0.07576 |
0.03640 |
-0.13528 |
-0.01569 |
*[]0 |
|
0.67925 |
0.05434 |
0.57955 |
0.75891 |
0*[] |
|
-0.04295 |
0.05114 |
-0.12656 |
0.04127 |
*[0] |
|
0.21911 |
0.07481 |
0.09319 |
0.33813 |
0[]* |
|
0.53183 |
0.06905 |
0.40893 |
0.63578 |
0[*] |
|
The coverage displays in Output 35.4.2 show that Test8
, Test7
, and Test9
have salient relationships with Factor1
. The coverage displays are either ‘0*[ ]’ or ‘[ ]*0’, indicating that the entire 90% confidence intervals for the corresponding
loadings are beyond the salience value at 0.45. On the other hand, the coverage display for Test3
on Factor1
is ‘0[ ]*’. This indicates that even though the loading estimate is significantly larger than zero, it is not large enough
to be salient. Similarly, Test3
, Test2
, and Test1
have salient relationships with Factor2
, while Test5
and Test4
have salient relationships with Factor3
. For Test6
, its relationship with Factor3
is a little bit ambiguous; the 90% confidence interval approximately covers values between 0.40 and 0.64. This means that
the population value might have been smaller or larger than 0.45. It is marginal evidence for a salient relationship.
For oblique factor solutions, some researchers prefer to examine the factor structure loadings, which represent correlations,
for determining salient relationships. In Output 35.4.3, the factor structure loadings and the associated standard error estimates and coverage displays are shown.
Output 35.4.3: Using the Factor Structure to Interpret the Factors
0.84771 |
0.02871 |
0.79324 |
0.88872 |
0*[] |
|
0.30847 |
0.06593 |
0.19641 |
0.41257 |
0[]* |
|
0.30994 |
0.06263 |
0.20363 |
0.40904 |
0[]* |
|
0.84894 |
0.02688 |
0.79834 |
0.88764 |
0*[] |
|
0.58033 |
0.05265 |
0.48721 |
0.66041 |
0*[] |
|
0.41970 |
0.06060 |
0.31523 |
0.51412 |
0[*] |
|
-0.86791 |
0.02522 |
-0.90381 |
-0.81987 |
[]*0 |
|
-0.42248 |
0.06187 |
-0.51873 |
-0.31567 |
[*]0 |
|
-0.48396 |
0.05504 |
-0.56921 |
-0.38841 |
[*]0 |
|
0.57790 |
0.05069 |
0.48853 |
0.65528 |
0*[] |
|
0.93325 |
0.02953 |
0.86340 |
0.96799 |
0*[] |
|
0.33738 |
0.06779 |
0.22157 |
0.44380 |
0[]* |
|
0.38449 |
0.06143 |
0.27914 |
0.48070 |
0[*] |
|
0.81615 |
0.03106 |
0.75829 |
0.86126 |
0*[] |
|
0.54535 |
0.05456 |
0.44946 |
0.62883 |
0[*] |
|
0.24345 |
0.06864 |
0.12771 |
0.35264 |
0[]* |
|
0.67351 |
0.04284 |
0.59680 |
0.73802 |
0*[] |
|
0.41162 |
0.05995 |
0.30846 |
0.50522 |
0[*] |
|
0.37163 |
0.06092 |
0.26739 |
0.46727 |
0[*] |
|
0.46498 |
0.04979 |
0.37923 |
0.54282 |
0[*] |
|
0.93132 |
0.03277 |
0.85159 |
0.96894 |
0*[] |
|
0.45248 |
0.05876 |
0.35072 |
0.54367 |
0[*] |
|
0.33583 |
0.06289 |
0.22867 |
0.43494 |
0[]* |
|
0.72927 |
0.04061 |
0.65527 |
0.78941 |
0*[] |
|
0.25122 |
0.07140 |
0.13061 |
0.36450 |
0[]* |
|
0.45137 |
0.05858 |
0.34997 |
0.54232 |
0[*] |
|
0.61837 |
0.05051 |
0.52833 |
0.69465 |
0*[] |
|
The interpretations based on the factor structure matrix do not change much from that based on the factor loadings except
for Test3
and Test9
. Test9
now has a salient correlation with Factor3
. For Test3
, it has salient correlations with both Factor1
and Factor2
. Fortunately, there are still tests that have salient correlations only with either Factor1
or Factor2
(but not both). This would make interpretations of factors less problematic.