Standardized estimates under equality constraints

Attachment | Size |
---|---|
lgcm.png | 141.1 KB |
lgcmdel.csv | 9.24 KB |
I ran a linear latent growth curve model in OpenMx and constrained all residual variances to be equal. Not surprisingly, they all get to be the same unstandardized estimate. However, OpenMx reports only a single standardized estimate for the residual, which happens to be the one associated with the first observation. Even if the unstandardized estimates are constrained to be equal, the unstandardized ones need not be and in reality seldom are the same.
[code]
name matrix row col Estimate Std.Error Std.Estimate Std.SE lbound ubound
1 e S x1 x1 1.0607526 0.08676699 0.6267662 0.05126796
[/code]
I attach the diagram of my exemplary model, which I created with Onyx. Standardized coefficients are given in parentheses next to unstandardized estimates. For parameter epsilon, OpenMx reports 0.63, which is the value associated with x1. My feeling is that OpenMx should report the complete set of standardized coefficients. Or was this a deliberate design decision?
Thanks,
Andreas
The standardized estimates
summary()
for the purpose of populating the 'free parameters' table. That table has one row per unique free (unstandardized) parameter. Thus, as you've noticed, multiple instances of the same unstandardized parameter resulting from equality constraints do not yield multiple entries for differing estimates of their corresponding standardized parameters.In this thread, I provide a general-purpose workaround to this problem, which makes OpenMx explicitly compute the standardized values with mxAlgebras.
Log in or register to post comments
In reply to The standardized estimates by RobK
nice!
I guess in this case the correct thing to do for users is to return in summary() additional rows with entries only in the standardized columns for entries whose label is the same as the ("first") free parameter with that label?
This also highlights a use for confidence intervals returning the parameter label, not the square bracket address (to avoid users having to match up things like this:
free parameters:
name matrix row col Estimate Std.Error Std.Estimate Std.SE lbound ubound
1 G_to_x1 A x1 G 0.39715439 0.015550001 0.89131051 0.034897963
2 G_to_x2 A x2 G 0.50366016 0.018232611 0.93255442 0.033758680
3 G_to_x3 A x3 G 0.57724179 0.020448606 0.94384674 0.033435470
4 G_to_x4 A x4 G 0.70277454 0.024011674 0.96236267 0.032881014
5 G_to_x5 A x5 G 0.79625104 0.026669755 0.97255579 0.032574933
6 x1_with_x1 S x1 x1 0.04081418 0.002812717 0.20556557 0.014166592
7 x2_with_x2 S x2 x2 0.03801999 0.002805789 0.13034225 0.009618962
8 x3_with_x3 S x3 x3 0.04082720 0.003152308 0.10915334 0.008427836
9 x4_with_x4 S x4 x4 0.03938697 0.003408863 0.07385809 0.006392269
10 x5_with_x5 S x5 x5 0.03628700 0.003678547 0.05413524 0.005487889
confidence intervals:
lbound estimate ubound
One Factor.Az[1,1] 0.00000000 0.00000000 0.00000000
One Factor.Az[1,2] 0.00000000 0.00000000 0.00000000
One Factor.Az[1,3] 0.00000000 0.00000000 0.00000000
One Factor.Az[1,4] 0.00000000 0.00000000 0.00000000
One Factor.Az[1,5] 0.00000000 0.00000000 0.00000000
One Factor.Az[1,6] 0.87060003 0.89131051 0.90888247
One Factor.Az[2,1] 0.00000000 0.00000000 0.00000000
One Factor.Az[2,2] 0.00000000 0.00000000 0.00000000
One Factor.Az[2,3] 0.00000000 0.00000000 0.00000000
One Factor.Az[2,4] 0.00000000 0.00000000 0.00000000
Log in or register to post comments
In reply to nice! by tbates
Thanks, Tim! Bear in mind
Bear in mind that there are no parameter labels anywhere in
Az
, since it's an algebra, and therefore a function of the free parameters rather than a container for the parameters themselves.Log in or register to post comments
OpenMx 2.0
mxStandardizeRAMpaths()
, which provides a table of standardized values for ALL nonzero path coefficients, even if they correspond to the same unstandardized parameter.Log in or register to post comments