Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
st: Exploratory and confirmatory factor analysis with tetrachoric correlations
From
"Miller, Nathan P." <[email protected]>
To
"[email protected]" <[email protected]>
Subject
st: Exploratory and confirmatory factor analysis with tetrachoric correlations
Date
Wed, 31 Jul 2013 14:41:49 -0400
Hi Statalisters,
I¹m working on a factor analysis with binary observed variables and am
having a lot of problems. Some background information:
- I¹m in the public health field and not a statistician.
- I¹m using Stata 12.0.
- The dataset has 99 observations.
- There are 15 observed variables, all binary.
- No missing data for variables included in analysis.
I ran the tetrachoric correlations factormat program. My code is below. A
few things in the output make me wonder if I can use this or if there is a
fatal problem:
- It is a Heywood case.
- There are negative uniqueness scores.
- I had to use force positive definite to get the analysis to run.
*--------------------Begin code------------------------------
tetrachoric hew_followup_01 hew_meet_01 superany_nm hew_hc_01 d1_zinc_01
///
d1_vita_01 d1_act_01 d1_chlor_01 d1_amox_01 rutf d1_rdt_01 d3_timer_01 ///
d3_therm_01 d3_scale_01 ort_corner, posdef
matrix iccm_tetra = r(Rho)
factormat iccm_tetra, n(99) ipf forcepsd factor(5)
*--------------------End code------------------------------
Next, I tried to do confirmatory factor analysis and get goodness-of-fit
measures for factor groupings based on the EFA above using the sem
command, but it doesn't give a solution. Below is an example for a
subgroup of variables that were grouped based on the EFA. I wanted to see
if these were reasonably represented by a single factor.
*--------------------Begin code------------------------------
tetrachoric d1_rdt_01 d3_timer_01 d3_therm_01 d3_scale_01 ort_corner,
posdef
ssd init d1_rdt_01 d3_timer_01 d3_therm_01 d3_scale_01 ort_corner
ssd set obs 99
ssd set cor 1.0000 \ ///
0.1909 1.0000 \ ////
0.5502 0.4376 1.0000 \ ////
0.4925 -0.1041 0.7234 1.0000 \ ///
-0.2689 0.3381 -0.0543 -0.1572 1.0000
sem (F1->d1_rdt_01 d3_timer_01 d3_therm_01 d3_scale_01 ort_corner)
*--------------------End code------------------------------
The output goes through a couple iterations and says "not concave." Then
goes through some more iterations that say "backed up" and then the log
likelihood stops changing and it continues with iterations until I hit
"break."
Any ideas what is wrong here? Is this a sample size issue? Does the
initial EFA have fatal flaws? How can I get the CFA to run? If I can't get
the goodness-of-fit measures using sem is there another way to get these?
Many thanks in advance for your help,
Nate
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/