Hello,
Recently, I have done a bivariate models.BUT I am confused with how to choose ACE or ADE in the bivariate models? I have tried using ICC in each variable apartly, BUT the fitting model one is ACE when another is ADE. NOW the question is that which one bivariate model I should use ? ACE-ACE or ADE-ADE or ACE-ADE? If the the answer is ACE-ADE, how to write the script?
Thanks for some help!
Cheers,
Fengxia
I'm guessing this is a follow-up to your thread about your triphenotype analysis of sleep duration, diabetes, and HbA1c, right? I really don't think it's wise to divide your sample into two overlapping subsamples and run separate analyses on each. You can incorporate the U-shaped trend into your triphenotype model by creating a dummy-coded covariate (a "definition variable") for sleep duration--make the 6-8h group the reference group, and create one indicator variable for being in the <6h group and another for being in the >8h group. Condition the liability-scale mean of diabetes on these dummy variables, and fix the threshold to zero to identify the model. If the regression coefficients for the two indicator variables are both positive and differ significantly from zero, then you have results consistent with your logistic regression analyses.
Thanks for your suggestion!
YES, but my analysis is biphenotype, that's sleep duration and diabetes, sleep duration and HbA1c separately. According to my understanding about "definition variable" for sleep duration, I should define sleep1 with 6-8h=0 and <6h=1, sleep2 with sleep1 with 6-8h=0 and >8h=1? BUT there will have missing data in sleep1 when sleep=>8h, and sleep2 when sleep=>8h, then I can't impute all my sample. How can I solve this problem?
If I have sleep1 and sleep2, the model would be sleep1-sleep2-diabetes ?
Finally, I really hope to receive your suggestion about ACE-ACE or ADE-ADE or ACE-ADE?
Are you not familiar with dummy coding? You'd have two indicator variables: one for <6h ('sleep1', say), and one for >8h ('sleep2', say). So, 6-8h would be scored (0,0), <6h would be scored (1,0), and >8h would be scored (0,1). You would condition either the mean or the threshold of diabetes on the two variables via regression, in addition to how you're currently conditioning on age.
The thing is, though, now that I think about it, I don't think the resulting model would be identified. It would be sort of like regressing diabetes onto sleep duration while simultaneously estimating a covariance between the two phenotypes. Biometrically decomposing a U-shaped relationship between two ordinal phenotypes doesn't seem so easy to me now.
If all three of those models seem plausible to you, why not try all three, and compare their fit to the data? Try adapting a script for your purposes, and post again for help if you get stuck. Note that with the ACE-ADE model, there would be only one free path from C, going to the first phenotype, and only one free path from D, going to the second phenotype. Thus, only A and E would contribute to the phenotypic covariance, and only A would contribute to the cross-twin cross-trait covariance.
I tried to adapt ACE-ADE model, but I have no idea about how to set one ACE and another ADE. When run ACE-ACE, we use:
how to change it when need to run an ACE-ADE?
You need to redefine the A, C, and E matrices, and appropriately define the D matrix. Post your current script, and I can make some suggestions.
I just run the ACE-ACE model, and because I don't know how to run with dummy coding, I divided the sample into two subsample (one include sleep duration <6h and 6~8h,another >8h and 6~8h). My script in <6h and 6~8h subsample:
And I have a problem in the ACE-ACE result, I have no idea why there were ACE.stda[1,2], ACE.stdc[1,2], ACE.stde[1,2] in confidence intervals.
Hope for your help, THANKS!
Summary of ACE
free parameters:
name matrix row col Estimate lbound ubound
1 a_1_1 a 1 1 6.445126e-01
2 a_2_1 a 2 1 4.813791e-01
3 a_2_2 a 2 2 2.526926e-01
4 c_1_1 c 1 1 6.662922e-01
5 c_2_1 c 2 1 -7.729928e-01
6 c_2_2 c 2 2 2.637099e-05
7 e_1_1 e 1 1 3.750442e-01
8 e_2_1 e 2 1 8.722846e-02
9 e_2_2 e 2 2 3.151094e-01
10 T_11 MZ.Th 1 1 9.148539e-01 -3 3
confidence intervals:
lbound estimate ubound note
ACE.h2[1,1] 7.745476e-22 4.153965e-01 0.9240819
ACE.h2[2,2] 8.359753e-23 2.955794e-01 0.8889913
ACE.c2[1,1] 7.761656e-42 4.439454e-01 0.9134585
ACE.c2[2,2] 1.753807e-02 5.975179e-01 0.9138442
ACE.e2[1,1] 4.492750e-02 1.406581e-01 0.3351444
ACE.e2[2,2] 4.188246e-02 1.069028e-01 0.2239186
ACE.stda[1,1] -9.612906e-01 6.445126e-01 0.9612907
ACE.stda[2,1] -9.231730e-01 4.813791e-01 0.9231730
ACE.stda[1,2] NA 0.000000e+00 NA !!!
ACE.stda[2,2] -9.416668e-01 2.526926e-01 0.9416665
ACE.stdc[1,1] -9.408472e-01 6.662922e-01 0.9557514
ACE.stdc[2,1] -9.559521e-01 -7.729928e-01 0.9559520
ACE.stdc[1,2] NA 0.000000e+00 NA !!!
ACE.stdc[2,2] -9.478683e-01 2.637099e-05 0.9478681
ACE.stde[1,1] -5.789146e-01 3.750442e-01 0.5789149
ACE.stde[2,1] -1.748776e-01 8.722846e-02 0.3333841
ACE.stde[1,2] NA 0.000000e+00 NA !!!
ACE.stde[2,2] -4.665202e-01 3.151094e-01 0.4665116
ACE.Rph[2,1] -5.036850e-01 -1.720697e-01 0.1994960
ACE.Ra[2,1] -1.000000e+00 8.854216e-01 NA !!!
ACE.Rc[2,1] NA -1.000000e+00 1.0000000 !!!
ACE.Re[2,1] -5.090314e-01 2.667864e-01 0.8844167
You requested CIs for 'stda', 'stdc', and 'stde' in line 290:
Since matrices 'a', 'c', and 'e' are lower-triangular, their [1,2] elements are fixed to zero; that is also true of 'stda', 'stdc', and 'stde'.
To fit the ACE-ADE model, the simplest change to make is probably to change this,
, to this,
. Then, redefine the model-expected covariance matrices to be:
Feel free to add additional algebras involving 'd' and 'D' to your script (e.g., a dominance-genetic correlation matrix, or standardized 'd' paths).
Finally, I note the comment in your script about CI difficulties using CSOLNP, and that you place the identifying equality MxConstraint,
varL
, into both group models as well as the container model. With CSOLNP, you were almost certainly running into a known issue with redundant equality constraints.