Model not identified when all Items covaried to each other (But it works in AMOS)

340 views
Skip to first unread message

Henri Santos

unread,
Sep 30, 2016, 5:30:58 PM9/30/16
to lavaan
Hello,

I am quite new to SEM and lavaan and from what I could see, this was not covered by previous posts on unidentified models. 

I am running the following model that I got from a colleague using SPSS AMOS. The residual correlations in this model were chosen by correlating items which had high modification indices with other items within the same latent factor.

model5<-'
#Full model with covariances
#2nd order latent variable
L=~l1+l2+l3+l4+l5 
#latent variables
l1 =~ i1+i2+i3+i4
l2 =~ i5+i6+i7+i8
l3 =~ i9+i10+i11+i12
l4 =~ i13+i14+i15+i16+i17
l5 =~ i18+i19+i20+i21
#residual correlations
i1~~i2+i3+i4
i2~~i3+i4
i3~~i4
i5~~i6+i7
i6~~i7
i7~~i8
i9~~i10
i11~~i12
i13~~i14+i15
i14~~i15+i16
i15~~i16
i16~~i17
i18~~i19+i20+i21
i19~~i20+i21
i20~~i21
'
fit5<-cfa(model5, data = MyData, missing = "pairwise")

When I run the model, I get the following message: 

Warning message:
In lav_model_vcov(lavmodel = lavmodel, lavsamplestats = lavsamplestats,  :
  lavaan WARNING: could not compute standard errors!
  lavaan NOTE: this may be a symptom that the model is not identified.

I ran pieces of the model to isolate the problem. Without residual correlations, the model works. Then I tried adding residual correlations from each latent variable. The errors happen when I have every item under a given latent factor correlating to each other. In this code, the problems are with l1 and l5:

#residual correlations l1
i1~~i2+i3+i4
i2~~i3+i4
i3~~i4

#residual correlations for l5
i18~~i19+i20+i21
i19~~i20+i21
i20~~i21

I am wondering if this is not supposed to be done for SEM. And is there something different to how it is done in SPSS AMOS? In that program, I had all the error terms of these items correlated to each other, and the model works fine. 

Thanks in advance!

Henri

Edward Rigdon

unread,
Oct 1, 2016, 12:38:24 PM10/1/16
to lav...@googlegroups.com
Common factors are defined by the covariance among indicators that is not otherwise accounted for. Allowing covariance among residuals reduces the unexplained common variance that is available for defining common factors. Moreover, allowing covariances among residuals consume degrees of freedom, and edge the model toward not being statistically identified, which can mean that the model cannot be estimated at all. The rules are the same for the Amos implementation of factor analysis as for the lavaan implementation--I don't know why Amos would not produce the same sort of error message that you are getting from lavaan.

In your syntax, NOT EVERY item's residual is free to covary with that of every other item loading on the same factor. So I suppose it is possible that small differences in things like starting values could have produced a different result with Amos. Nevertheless, there is no reason to expect a good results from a model like this.

--
You received this message because you are subscribed to the Google Groups "lavaan" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lavaan+unsubscribe@googlegroups.com.
To post to this group, send email to lav...@googlegroups.com.
Visit this group at https://groups.google.com/group/lavaan.
For more options, visit https://groups.google.com/d/optout.

Yves Rosseel

unread,
Oct 6, 2016, 9:27:39 AM10/6/16
to lav...@googlegroups.com
> When I run the model, I get the following message:
>
> Warning message:
> In lav_model_vcov(lavmodel = lavmodel, lavsamplestats =
> lavsamplestats, :
> lavaan WARNING: could not compute standard errors!
> lavaan NOTE: this may be a symptom that the model is not identified.

Note that you do get estimates. But no standard errors, which is to be
expected, given that the model is not identified.

> something different to how it is done in SPSS AMOS? In that program, I
> had all the error terms of these items correlated to each other, and the
> model works fine.

That is bizarre. The only way to get standard errors in this case is to
use bootstrapping. Could you post the AMOS output?

Yves.
Message has been deleted

Henri Santos

unread,
Oct 7, 2016, 6:03:55 PM10/7/16
to lavaan
Hello,

I'm attaching the results of my analysis in AMOS. There is a very small amount of missing data in this dataset, so I did not output modification indices for this analysis (a previous analysis in a validation study did all the tests with modification indices and was used as a basis for the correlations in this model) and I estimated means and intercepts in analysis options.

In R, I am planning to use Amelia to do multiple imputations but I encountered some problems there, where it kept asking for more imputations. I figured I would first try to figure out why this model by itself was problematic before moving on to multiple imputations.

If needed, I have all the R code, data, and SPSS files (for AMOS) ready to share if needed.

Thanks!
CFA_TEST model5 results 7 October 2016.xlsx

Yves Rosseel

unread,
Nov 23, 2016, 3:29:35 AM11/23/16
to lav...@googlegroups.com
On 10/08/2016 12:03 AM, Henri Santos wrote:
> If needed, I have all the R code, data, and SPSS files (for AMOS) ready
> to share if needed.

Now that I have seen the AMOS output, I am intrigued. If you would be
willing to share the data (and the R code), I will try to find out how
AMOS computes standard errors for a non-identified model.

Yves.
Reply all
Reply to author
Forward
0 new messages