Joint-Modeling Survival and Repeated ... PreviousNext
Mplus Discussion > Missing Data Modeling >
Message/Author
 Moh Yin Chang posted on Saturday, July 21, 2007 - 2:00 pm
Dear Dr. Muthen,

May I know if Mplus can handle joint modeling of survival and repeated measure (growth model) distribution? What is I also want to model discontinuity in the repeated measure process?

Thanks.

Moh Yin
 Tihomir Asparouhov posted on Monday, July 23, 2007 - 10:09 am
Mplus can handle joint modeling of survival and repeated measure. You can use either continuous or discrete time survival modeling. This modeling is essentially NMAR analysis, so it could be tricky but powerful.

Tihomir
 Anna Zajacova posted on Friday, December 04, 2009 - 3:41 pm
Hi,
I am also interested in a joint model of a repeated-measure outcome (5-category ordered variable) and survival in a data with 70% dying during the 4-wave 7-year study.
May I ask where I could find an example of implementing the joint survival/growth model in Mplus?
Many thanks in advance for your response -- this discussion forum is immensely helpful!!!
 Bengt O. Muthen posted on Sunday, December 06, 2009 - 10:58 am
One way to handle this is to follow the UG examples 6.23. Just replace the f, u part with your growth model where f would be the growth factors.

That's not the only way to do this, however. You can also study e.g. the Diggle-Kenward 1994 Applied Statistics "selection" modeling approach to NMAR, the Roy 2003 Biometrics pattern-mixture oriented approach, and the Beunckens et al 2008 Biometrics shared-parameter approach. The Beunckens approach is similar to ex 6.23 in the 1-class case. These approaches and many more can be handled in Mplus as I show in an upcoming paper. The question is how you view the relationship between death, your outcome, and other related variables.
 Anna Zajacova posted on Wednesday, December 09, 2009 - 11:25 am
Dear Dr. Muthen,
Many thanks for your prompt and helpful reply!
I will consult the sources you suggested.
Respectfully,
Anna Zajacova
 Nancy Rumbaugh Whitesell posted on Thursday, November 18, 2010 - 9:09 am
I have longitudinal data on the onset of substance use across four substances -- cigarettes, smokeless tobacco, alcohol, and marijuana. I have estimated discrete-time survival models for each substance separately and would like to model the relationship among hazards across substances, analogous to a parallel-process model of multiple LGCM trajectories. I am uncertain that I have done this correctly and would like to confirm before I interpret. Here is the code:
analysis: estimator = mlr; integration=montecarlo;
model: hazc by cig9-cig14@1;
hazt by tob9-tob14@1;
haza by alc9-alc14@1;
hazm by mar9-mar14@1;
hazc hazt haza hazm on sexf;
 Bengt O. Muthen posted on Thursday, November 18, 2010 - 5:33 pm
You want to check that your 5 haz factors are correlated conditional on the covariate - check your output and if not add WITH statements.
 Michael S. Businelle, Ph.D. posted on Thursday, January 12, 2012 - 8:31 am
I am conducting a discrete time survival analysis (example 6.19 in edition 5 of the MPlus manual).

I have 4 differet time points where relapse was determined (abstinent = 0, relapse = 1, missing = 999). It seems that example 6.19 instructs me to code all time points after the first relapse as missing. Is this correct?

Thanks,
Michael
 Linda K. Muthen posted on Thursday, January 12, 2012 - 9:46 am
Yes, this is correct. You will find more information about discrete-time survival analysis in the Topic 4 course handout on the website starting at slide 132. Following are examples of how the data should look for discrete-time survival analysis:

An individual who is censored after time period five ( ji = 6)
( 0 0 0 0 0 )
An individual who experiences the event in period four ( ji = 4)
( 0 0 0 1 999 )
An individual who drops out after period three, i.e. is censored
during period four before the study ends ( ji = 4)
( 0 0 0 999 999 )
 Borja Del Pozo Cruz posted on Tuesday, August 13, 2019 - 12:36 am
Dear,
I want to run a continuous-time survival analysis using a Cox regression model. In doing so, my outcome is continuous and longitudinal (sitting, measured 5 times- s1-s5). So i first run a growth curve model and then try to link that model with the mortality risk. I have two covariates x, and y. Am i correct with the following model? if not could please assist?
VARIABLE: NAMES = t s1-s5 x y tc;
SURVIVAL = t (ALL);
TIMECENSORED = tc (0 = NOT 1 = RIGHT);
MODEL:
i s | s1@0 s2@1 s3@2 s4@3 s5@4;
i s t ON x y;
the idea is then to predict t from i and s, after controling for x and y.
 Tihomir Asparouhov posted on Wednesday, August 14, 2019 - 8:38 am
This looks reasonable. You would need "t on i s" as well. In addition, you should use
SURVIVAL = t;
instead of
SURVIVAL = t (all);
The difference is explained in Section 9
http://www.statmodel.com/download/Survival.pdf
That change will allow Mplus to use the most appropriate treatment for the survival variable.
 Borja Del Pozo Cruz posted on Thursday, August 15, 2019 - 4:11 pm
thank you, Tihomir.
Its seem to work fine. I shall try adding a mixture part as well. I will post my proposal to that and imay have some follow up questions. Thanks! Borja
 Borja Del Pozo Cruz posted on Tuesday, December 10, 2019 - 6:08 pm
Dear Tihomir,
I have now run a growth mixture model and arrived to a solution that I am happy with. I would like now to use the c (profile) to predict mortality. would the following set up be ok? it does not work...

SURVIVAL = fup_all_0;
TIMECENSORED = status2_0 (0 = NOT 1 = RIGHT);
CLASSES = c1(3);

ANALYSIS:
TYPE = mixture;
!PROCESSORS = 2;STARTS = 250 100; STITERATIONS = 100;
ALGORITHM=INTEGRATION;
MODEL:
%OVERALL%
i s q | s3sitm@0 s4sitm@1 s5sitm@2 s6sitm@3 s7sitm@4 s8sitm@5;
!s3sitm-s8sitm pon no_dis_0-no_dis_5 ;
!s3sitm-s8sitm pon exergr_0-exergr_5 ;
!s3sitm-s8sitm pon smok_0-smok_5 ;
i@0
s@0
q@0
i with s@0;
i with q@0;
s with q@0;
fup_all_0 ON c1;

OUTPUT:
TECH11 TECH14;
SAVEDATA:
FILE IS growth_var=fix_cov=fix_2.dat;
SAVE = cprobabilities;
 Borja Del Pozo Cruz posted on Tuesday, December 10, 2019 - 6:36 pm
Sorry I forgot to mention that I have 25 dataset and using imputation to combine the results. Thanks!
 Tihomir Asparouhov posted on Wednesday, December 11, 2019 - 4:28 pm
Take a look at User's Guide example 7.30.

You have to replace

fup_all_0 ON c1;

with

%C1#1%
[fup_all_0@0];
%C1#2%
[fup_all_0];
%C1#3%
[fup_all_0];
 Borja Del Pozo Cruz posted on Wednesday, December 11, 2019 - 5:17 pm
Thanks, Tihomir:

I have tried that syntax and it is basically reducing the number of classes to 1 - I suppose those who survive.
What I really want is to :
A. Get profiles of people (based on sitting time)
B. Predict mortality risk from class membership.

Would that makes more sense?
Thanks!
 Borja Del Pozo Cruz posted on Wednesday, December 11, 2019 - 5:18 pm
I should have said that sitting time is a longitudinal outcome
 Tihomir Asparouhov posted on Wednesday, December 11, 2019 - 6:03 pm
I think what you are saying is that the class formation changes when you add the survival variable. I would recommend the BCH method. See Section 3
http://statmodel.com/examples/webnotes/webnote21.pdf
 Tihomir Asparouhov posted on Wednesday, December 11, 2019 - 6:08 pm
Ignore the above message - that is not available. I would recommend the 3-step estimation, see Section 3
http://statmodel.com/examples/webnotes/webnote16.pdf
 Borja Del Pozo Cruz posted on Wednesday, December 11, 2019 - 6:59 pm
Thanks. Would that work tho with Imputation type data?
 Borja Del Pozo Cruz posted on Thursday, December 12, 2019 - 12:11 am
Ok, so it seems that the 3-step estimation works, thanks!
A follow -up question...how do I use class 2 (for example) instead of class 1 as reference?

I have tried - but does not work:

%C1#1%
[fup_all_0];
%C1#2%
[fup_all_0@0];
%C1#3%
[fup_all_0];

Thanks!
Borja
 Bengt O. Muthen posted on Thursday, December 12, 2019 - 3:04 pm
We need to see your full output - send to Support along with your license number.
 Borja Del Pozo Cruz posted on Tuesday, January 28, 2020 - 5:17 pm
Dear professors,
I have abandoned the latent class analysis and went back to joint repeated measures and survival outcome.
I am having troubles in interpreting the results.
the intercept is significantly associated with mortality and so is the slope. the quadratic is not.
here are the resutls, how shall i clinically interpret them? long out is sitting time.
FUP_ALL_0 ON
I 0.151 0.030 5.022 0.000
S 0.641 0.299 2.142 0.032
Q 2.758 1.898 1.453 0.146

Means
I 5.471 0.025 222.389 0.000
S 0.298 0.017 17.165 0.000
Q -0.055 0.003 -16.696 0.000
 Tihomir Asparouhov posted on Wednesday, January 29, 2020 - 5:03 pm
The interpretation is like in standard Cox regression. You can start with equation (8)
http://www.statmodel.com/download/Survival.pdf

It might be helpful to you in the interpretation if you save the factor scores for I, S and Q
"savedata: file=1.dat; save=FS;"

I would also recommend looking at
"basehazard:output"
as well as the plots available for your analysis using
"plot:type is plot3;"
 Borja Del Pozo Cruz posted on Wednesday, January 29, 2020 - 11:59 pm
thanks, Tihomir,
It is still not clear to me what Q would mean in the context of survival. I can see what slope means - it could be effect of trend (faster or slower) on mortality. but not sure about Q interpretation.

perhaps q can be used to figure out the longitudinal outcome at the turning point and use that value as a control alongside the final value of the outcome? or you are suggesting that we use factor scores to regress mortality on i s q and we interpret i and s?

longitudinal outcome is sitting time

thanks!

B
 Tihomir Asparouhov posted on Thursday, January 30, 2020 - 12:22 pm
Since FUP_ALL_0 ON S is not significant you should delete it from the model. If it was significant it would mean that the relationship between survival and sitting time is more complex than just correlation (quadratic form).

I did not suggest for you to use factor scores to regress mortality on. These are just estimates and they have measurement error and if you do that kind of regression you should expect biased estimates. I suggested that as a way to approximately understand / present and interpret your results.
 Tihomir Asparouhov posted on Thursday, January 30, 2020 - 12:24 pm
Correction: FUP_ALL_0 ON Q
 Borja Del Pozo Cruz posted on Thursday, January 30, 2020 - 2:16 pm
Thanks so much. I think it make sense.
Borja
Back to top
Add Your Message Here
Post:
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action: