Can anyone provide a simple implementation of MIMIC (Multiple Indicators Multiple Causes) analysis using glamm instead of sem?
(I do not yet fully understand how gllamm works, and so am trying both to reproduce particular results, and to use this example to better understand gllamm itself.)
1) Short (abstract) version of what I'm trying to do:
(All variables are continuous)
Multiple Causes: a,b
Latent Variable: L
Multiple Indicators: w,x,y,z
Simple MIMIC implemented via sem command:
sem (a b -> L) (L -> w x y z)
How to implement the same MIMIC analysis using gllamm?
And, then: how to implement the same MIMIC analysis using gllamm, *adding* "adaptive quadrature" and "normalize and achieve identification by imposing a factor loading of unity on indicator w"?
2) Longer Version:
I am trying to implement a simple MIMIC model using GLLAMM, reproducing what was described in Rose and Spiegel (2009) "Cross-Country Causes and Consequences of the 2008 Crisis: Early Warning":
"We estimate our MIMIC models in STATA with GLLAMM; Rabe-Hesketh et al (2004a,b) provide further details. The iterative estimation technique begins with adaptive quadrature which is followed by Newton-Raphson. We normalize and achieve identification by imposing a factor loading of unity on the stock market change."
The authors have made their dataset available, and I have reproduced other (non-MIMIC) results in the publication, so I am fairly certain that the variables I have calculated from their raw data are the same as theirs.
Similar to my code above, I believe the MIMIC model would be implemented using "sem" as follows:
sem (lnpop lngdpc -> CrisisSeverity) (CrisisSeverity -> dsm2008 dgdp2008 dsdr2008 dii2008)
Where:
CrisisSeverity is a latent variable, with four observable indicators:
And the multiple 'causes' being investigated first are:
(More causes will be investigated later, but for right now I'm just trying to generate the same output, using their dataset, to learn how!)
Because they explicitly indicate using gllamm I'm trying to do so as well, but don't yet understand all the parts, and haven't found a simple clear example of using gllamm for MIMIC purposes.
(It is unclear to me why gllamm would be necessary, if it could just be done using sem ...unless gllamm allows the use of "adaptive quadrature" and "normaliz[ing] and achiev[ing] identification by imposing a factor loading of unity on the stock market change".)
Thanks for any help!
=Peter
(I do not yet fully understand how gllamm works, and so am trying both to reproduce particular results, and to use this example to better understand gllamm itself.)
1) Short (abstract) version of what I'm trying to do:
(All variables are continuous)
Multiple Causes: a,b
Latent Variable: L
Multiple Indicators: w,x,y,z
Simple MIMIC implemented via sem command:
sem (a b -> L) (L -> w x y z)
How to implement the same MIMIC analysis using gllamm?
And, then: how to implement the same MIMIC analysis using gllamm, *adding* "adaptive quadrature" and "normalize and achieve identification by imposing a factor loading of unity on indicator w"?
2) Longer Version:
I am trying to implement a simple MIMIC model using GLLAMM, reproducing what was described in Rose and Spiegel (2009) "Cross-Country Causes and Consequences of the 2008 Crisis: Early Warning":
"We estimate our MIMIC models in STATA with GLLAMM; Rabe-Hesketh et al (2004a,b) provide further details. The iterative estimation technique begins with adaptive quadrature which is followed by Newton-Raphson. We normalize and achieve identification by imposing a factor loading of unity on the stock market change."
The authors have made their dataset available, and I have reproduced other (non-MIMIC) results in the publication, so I am fairly certain that the variables I have calculated from their raw data are the same as theirs.
Similar to my code above, I believe the MIMIC model would be implemented using "sem" as follows:
sem (lnpop lngdpc -> CrisisSeverity) (CrisisSeverity -> dsm2008 dgdp2008 dsdr2008 dii2008)
Where:
CrisisSeverity is a latent variable, with four observable indicators:
- dsm2008: %change in the national stock market over 2008
- dgdp2008: %change in GDP over 2008
- dsdr2008: %change in the SDR exchange rate over 2008
- dii2008: change in a country risk measure (from Institutional Investor) over ~2008 (mar'08-mar'09)
And the multiple 'causes' being investigated first are:
- lnpop: natural logarithm of country population in 2006 (prior to the crisis)
- lngdpc: natural logarithm of GDP per capita in 2006 (prior to the crisis)
(More causes will be investigated later, but for right now I'm just trying to generate the same output, using their dataset, to learn how!)
Because they explicitly indicate using gllamm I'm trying to do so as well, but don't yet understand all the parts, and haven't found a simple clear example of using gllamm for MIMIC purposes.
(It is unclear to me why gllamm would be necessary, if it could just be done using sem ...unless gllamm allows the use of "adaptive quadrature" and "normaliz[ing] and achiev[ing] identification by imposing a factor loading of unity on the stock market change".)
Thanks for any help!
=Peter
Comment