I am comparing two different methods for factor analysis in Stata: principal factors (as specified by the pf option) and maximum likelihood (as specified by the ml option). Here are the two commands I am comparing:
sysuse auto
factor price mpg headroom trunk weight length turn displacement gear_ratio, mineigen(1) pf
factor price mpg headroom trunk weight length turn displacement gear_ratio, mineigen(1) ml
I specify mineigen(1) to only keep factors with eigenvalues greater than unity. The factor loading matrix for pf retains one factor, as would be expected, given there is only one factor with eigenvalues greater than unity (eigenvalue = 5.8). Why does the factor loading matrix for ml retain five factors, when there are only two factors with eigenvalues greater than unity?
I'm not sure if the answer might have something to do with the solution for ml being a Heywood case; the help-file for Heywood case doesn't mention anything about the factor loading matrix.
Here is the output:
. factor price mpg headroom trunk weight length turn displacement gear_ratio, mineigen(1) pf
(obs=74)
Factor analysis/correlation Number of obs = 74
Method: principal factors Retained factors = 1
Rotation: (unrotated) Number of params = 9
--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 5.80299 5.27017 0.8901 0.8901
Factor2 | 0.53283 0.23069 0.0817 0.9719
Factor3 | 0.30214 0.11137 0.0463 1.0182
Factor4 | 0.19077 0.19287 0.0293 1.0475
Factor5 | -0.00210 0.02635 -0.0003 1.0472
Factor6 | -0.02845 0.01025 -0.0044 1.0428
Factor7 | -0.03869 0.04112 -0.0059 1.0369
Factor8 | -0.07981 0.08074 -0.0122 1.0246
Factor9 | -0.16055 . -0.0246 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(36) = 673.52 Prob>chi2 = 0.0000
Factor loadings (pattern matrix) and unique variances
---------------------------------------
Variable | Factor1 | Uniqueness
-------------+----------+--------------
price | 0.4846 | 0.7652
mpg | -0.8148 | 0.3362
headroom | 0.5524 | 0.6948
trunk | 0.7398 | 0.4527
weight | 0.9756 | 0.0483
length | 0.9546 | 0.0887
turn | 0.8605 | 0.2596
displacement | 0.9138 | 0.1649
gear_ratio | -0.7831 | 0.3867
---------------------------------------
.
end of do-file
. do "C:\Users\NAE215\AppData\Local\Temp\1\STD4dc4_000000.tmp"
. factor price mpg headroom trunk weight length turn displacement gear_ratio, mineigen(1) ml
(obs=74)
number of factors adjusted to 5
<log omitted>
Factor analysis/correlation Number of obs = 74
Method: maximum likelihood Retained factors = 5
Rotation: (unrotated) Number of params = 35
Schwarz's BIC = 151.498
Log likelihood = -.4278555 (Akaike's) AIC = 70.8557
Warning: Solution is a Heywood case; that is, invalid or boundary values of uniqueness.
--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 3.87317 1.84053 0.4924 0.4924
Factor2 | 2.03264 1.18001 0.2584 0.7508
Factor3 | 0.85263 -0.07200 0.1084 0.8592
Factor4 | 0.92463 0.74196 0.1176 0.9768
Factor5 | 0.18267 . 0.0232 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(36) = 673.52 Prob>chi2 = 0.0000
LR test: 5 factors vs. saturated: chi2(1) = 0.77 Prob>chi2 = 0.3793
(tests formally not valid because a Heywood case was encountered)
Factor loadings (pattern matrix) and unique variances
-------------------------------------------------------------------------------
Variable | Factor1 Factor2 Factor3 Factor4 Factor5 | Uniqueness
-------------+--------------------------------------------------+--------------
price | 0.3182 0.7650 0.5600 -0.0000 -0.0000 | 0.0000
mpg | -0.5844 -0.4288 0.0811 -0.3382 0.1998 | 0.3137
headroom | 0.6619 -0.0440 -0.1115 0.1121 0.0975 | 0.5254
trunk | 1.0000 -0.0063 0.0018 -0.0000 0.0000 | 0.0000
weight | 0.6758 0.5263 -0.1410 0.4482 -0.1185 | 0.0316
length | 0.7292 0.3721 -0.1515 0.4769 -0.1867 | 0.0445
turn | 0.6037 0.3428 -0.2584 0.4783 -0.1577 | 0.1976
displacement | 0.6128 0.5804 -0.2571 0.3750 0.2438 | 0.0215
gear_ratio | -0.5137 -0.6260 0.5868 0.0001 0.0000 | 0.0000
-------------------------------------------------------------------------------