You are here

ACE model lower CI negative number

8 posts / 0 new
Last post
valentinav's picture
Offline
Joined: 06/15/2020 - 08:45
ACE model lower CI negative number

Hi All,
I am new to ACE model estimation so I am trying to follow some tutorials I found online (script attached).

The results seems fine, and are also coherent with another script I used. However, I got negative lower CI: ACEvc.VarC[1,4] -0.2443061 0.23255753 0.7557620.
Does this make sense to you? As far as I know when CI include 0 we cannot conclude that the value is different from 0...

I would really appreciate whether someone could help me with this.
Thank you in advance!
Best,
Valentina

Summary of ACEvc 
 
free parameters:
    name    matrix row col   Estimate   Std.Error A
1 interC intercept   1   1 12.9836360  1.61658419  
2  betaS        bS   1   1 -0.2424204  0.96901765  
3  betaA        bA   1   1 -0.1057470  0.02198311  
4   VA11        VA   1   1  9.4010395 10.84553399  
5   VC11        VC   1   1  2.9562094  9.78221159  
6   VE11        VE   1   1 28.0673269  2.82575907  
 
confidence intervals:
                    lbound    estimate    ubound note
ACEvc.VarC[1,1]         NA  9.40103948        NA  !!!
ACEvc.VarC[1,2]         NA  2.95620939        NA  !!!
ACEvc.VarC[1,3]         NA 28.06732694        NA  !!!
ACEvc.VarC[1,4] -0.2443061  0.23255753 0.7557620     
ACEvc.VarC[1,5] -0.4037859  0.07312901 0.4885879     
ACEvc.VarC[1,6]  0.5736126  0.69431346 0.8287777     
  To investigate missing CIs, run summary() again, with verbose=T, to see CI details. 
 
Model Statistics: 
               |  Parameters  |  Degrees of Freedom  |  Fit (-2lnL units)
       Model:              6                    518              3404.776
   Saturated:             NA                     NA                    NA
Independence:             NA                     NA                    NA
Number of observations/statistics: 262/524
 
Information Criteria: 
      |  df Penalty  |  Parameters Penalty  |  Sample-Size Adjusted
AIC:      2368.7757               3416.776                 3417.105
BIC:       520.3732               3438.186                 3419.163
CFI: NA 
TLI: 1   (also known as NNFI) 
RMSEA:  0  [95% CI (NA, NA)]
Prob(RMSEA <= 0.05): NA
To get additional fit indices, see help(mxRefModels)
timestamp: 2020-06-18 11:22:32 
Wall clock time: 0.559001 secs 
optimizer:  NPSOL 
OpenMx version number: 2.17.2 
AdminRobK's picture
Offline
Joined: 01/24/2014 - 12:15
sign indeterminacy?

I don't see your script attached to your post. Nonetheless, this other post will probably address your confusion.

valentinav's picture
Offline
Joined: 06/15/2020 - 08:45
Answer to previous

Thank you for your answer!

Sorry, the script is now attached.
I red the other answer, but it seems unlikely in my case since the lower CI is -0.24 and the estimate is 0.23.
If it would be positive (0.24) it would not be a lover bound CI.

If this is not usual, I suspect there could be an issue in the script.

File attachments: 
AdminRobK's picture
Offline
Joined: 01/24/2014 - 12:15
OK, now that I can see your

OK, now that I can see your script, I can see that it's not a matter of sign indeterminacy, and that your script does allow negative variance components:

# Create Matrices for Variance Components
covA      <- mxMatrix( type="Symm", nrow=nv, ncol=nv, free=TRUE, values=sVa, label="VA11", name="VA" ) 
covC      <- mxMatrix( type="Symm", nrow=nv, ncol=nv, free=TRUE, values=sVa, label="VC11", name="VC" )
covE      <- mxMatrix( type="Symm", nrow=nv, ncol=nv, free=TRUE, values=sVe, label="VE11", name="VE" )

So...what's the problem here?

valentinav's picture
Offline
Joined: 06/15/2020 - 08:45
thanks!

Thanks very much for the answer?

No real problem I guess, I was using this script but I was not sure whether I used it correctly.
Do you know how to modify this so that I do not get negative estimates?

Also, do you have knowledge of material I can study to be able to manipulate better the script? I have already read the OpenMx tutorial present in this website.

Thanks again!

AdminRobK's picture
Offline
Joined: 01/24/2014 - 12:15
lbounds
Do you know how to modify this so that I do not get negative estimates?

Something like this:

# Create Matrices for Variance Components
covA      <- mxMatrix( type="Symm", nrow=nv, ncol=nv, free=TRUE, values=sVa, lbound=diag(0,nv), label="VA11", name="VA" ) 
covC      <- mxMatrix( type="Symm", nrow=nv, ncol=nv, free=TRUE, values=sVa, lbound=diag(0,nv), label="VC11", name="VC" )
covE      <- mxMatrix( type="Symm", nrow=nv, ncol=nv, free=TRUE, values=sVe, lbound=diag(1e-4,nv), label="VE11", name="VE" )

But, there are statistical consequences of setting lower bounds like that. See this other post, as well as the post it links.

Also, do you have knowledge of material I can study to be able to manipulate better the script?

I guess maybe the demos at Hermine Maes' site, or in the 'demo' directory of the OpenMx source repository (you can clone the repo to your local machine).

tbates's picture
Offline
Joined: 07/31/2009 - 14:25
A = 0, C = 0, E = 1

From the variance estimates for A, C, and E (labelled "VA11", "VC11", and "VE11"), we can see that these data have only E...

e.g. asking umxAPA to work out the CI from the estimate and SE for A, we get:

umxAPA(9.4010395, 10.84553399)

β = 9.4 [-11.86, 30.66]

The standardized A, C, E reflect this. So, standardized A = 0.23 [-.24, .76]

Given you've got a decent size sample, either something was done wrong in creating the MZ and DZ datasets, or the trait is genuinely a random number.

probably could clarify this script somewhat to avoid having matrix "VC" (for shared environmental variance), and algebra "VC" (for variance components) and row names "VC" (for variance component) with column names duplicated...

valentinav's picture
Offline
Joined: 06/15/2020 - 08:45
thanks

Hi!

Thanks for the answer!
So from these results the only things that matter is E? which does not make sense to me..

I did not get this sentence " probably could clarify this script somewhat to avoid having matrix "VC" (for shared environmental variance), and algebra "VC" (for variance components) and row names "VC" (for variance component) with column names duplicated..." do you think this might be causing the issue?