Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Unable to fit model (latent growth / SEM builder)

    Hi everybody,

    I'm currently trying to fit a latent growth model for a paper. Described from top to bottom, the model has three observed items at two time points (t1, t2, six observed total), while at the level below there is one latent factor for each of the observed item-bundles (one for t1, one for t2) with paths pointing upwards to the observed variables. One level below that, there is the Intercept and the Slope (latent) with paths going upwards toward the two latent factors. At the lowest/bottom level, there are the control variables such as gender, mean age, age², age³ (observed) with paths to both Intercept and Slope. Covariances are between the Intercept and Slope and between the observed "top level" variables from t1 => t2.

    I cannot seem to fit the model. I tried brute force and medium force as described in http://www.stata.com/manuals13/semintro12.pdf but all that happens is an infinite processing time (I let it calculate ~40 hours once), or it tells me convergence was not achieved...

    I'm not sure what else I could try or if some other fix has come up since http://www.stata.com/manuals13/semintro12.pdf was released, but I'd be glad for any help on the matter.

    Thank you and kind regards
    Kornelius




  • #2
    Hi Kornelius,

    Could you show us the code you used? This might help one of us assist you.

    Patrick

    Comment


    • #3
      The way in which you're describing the model is a bit difficult to follow. Are you fitting an LCM on individual data or is there some type of implied multilevel model? If you could provide your code, math, or a path diagram it'd be much easier to get informative responses.

      Comment


      • #4
        Hi again, thanks for replying.

        My path diagram is as follows:

        Comment


        • #5
          I'm not sure I understand what you are trying to accomplish here. You are doing something rather unusual in that you are fitting a latent growth curve model to latent variables rather than observed. In its structure, your model is much like example 9 in the SEM manaul, the famous Wheaton et al. model used as a bench mark example in almost all SEM programs. That model is based on two wave panel data with two exogenous variables and correlated errors in the endogenous observables, To that structure, you have added a latent growth curve for the latent variables. I am not sure that the model is identified particularly because you only have two measurement points. I take it that the coefficients you show are based on the non-converged results. I note that you have an error term on the slope but not the intercept.I don't know why you did it that way since it means that you think you have random slopes and a fixed intercept which is a somewhat unusual specification in random effect models. In the results you have, the error term on the slope is essentially zero. This is usually an indicator of an under identified model.

          If you assume that the model is identified, I would guess, given its complexity, that SEM is having a hard time generating decent start values. I can't read the coefficients for the exogenous variables in the path diagram you provided, but if the variances are grossly unequal you might find it useful to rescale the variables so that the variances are roughly within the same order of magnitude. Of course the other advice, which you have probably already followed, is to simplify the model by removing the correlated errors and perhaps the latent growth curve, first estimating the model the way that Wheaton et al. did it.
          Richard T. Campbell
          Emeritus Professor of Biostatistics and Sociology
          University of Illinois at Chicago

          Comment


          • #6
            Thank you for the extensive reply, Dick. I will have to spend a little more time with it to address all the points you mentioned, since I'm not that advanced/so deeply experienced with the methodological intricacies (this is for my Master's thesis). Basically, I tried a similar approach to what Specht et al. did in their paper: http://www.diw.de/documents/publikat...diw_sp0377.pdf (see page 62, or image I attached)
            They have the same model with the Intercept and Slope and respective paths towards the factors of personality at two time points. Among other things, they used the same control variables... my code looks like this (first modeled in the SEM builder, but after that adjusted with the troubleshooting guide I mentioned in my previous post)

            gsem (NeuroT1@1 -> b5_05, ) (NeuroT1@b -> b5_10, ) (NeuroT1@c -> b5_15, ) (NeuroT2@1 -> b52_05, ) (NeuroT2@b -> b52_10, ) (NeuroT2@c -> b52_15, ) (Intercept@1 -> NeuroT1, ) (Intercept@1 -> NeuroT2, ) (Slope@0 -> NeuroT1, ) (Slope@1 -> NeuroT2, ) (f_all -> Intercept, ) (f_all -> Slope, ) (male_z -> Intercept, ) (male_z -> Slope, ) (age_z -> Intercept, ) (age_z -> Slope, ) (age2 -> Intercept, ) (age2 -> Slope, ) (age3 -> Intercept, ) (age3 -> Slope, ), intmethod(ghermite) iterate(20) latent(NeuroT1 NeuroT2 Intercept Slope) cov(e.b5_05*e.b52_05 e.b5_10*e.b52_10 e.b5_15*e.b52_15 e.Intercept*e.Slope) from(b)

            ... I started with intpoints(2) and some other options, so that at least I had an output, but it told me "convergence was not achieved". Regardless, I used the from(b) option, and in the code above I removed some of the covariances that looked weird in the output. It's still calculating (since yesterday), but I guess convergence won't be achieved this time either.

            If you can give me any help on top of what you wrote before, it's of course greatly appreciated. I'll try to get behind it and post again, should I make any progress.

            Best
            Kornelius
            Attached Files

            Comment


            • #7
              Fitting a growth curve to latent variables is not unusual. Mplus would call this a "multiple indicator growth model". It's the only way into longitudinal measurement invariance. For identification, and also to test invariance, you need to set up various equality constraints between corresponding parameters across time. The Mplus example (6.14 I think) shows this. The testing procedure is also well described and automated in R's lavaan package. Sorry I don't know how to do this with Stata. Still learning. It will be interesting to see how easy or hard it is compared with these other programs.

              Comment

              Working...
              X