question about disease progress and drop out joint model

2 messages 2 people Latest: Dec 10, 2010

question about disease progress and drop out joint model

From: Kehua wu Date: December 10, 2010 technical
Dear NMusers, I am trying the joint modeling of disease progress and dropout model. NONMEM did not indicate any error, but it looks like did not run it and there is no results. I am following Chuanpu Hu and Mak E. Sale's method. Our disease progress model is y= base + (slope * time). Please find the code below and the data file in attachment. I would appreciate any feedback. Kehua $INPUT C ID TIME DV CMT EVID TYPE $DATA 500.csv IGNORE=C $SUBS ADVAN6 TOL=6 $MODEL COMP=(CUMHAZ) COMP=(HZLAST) $PK BASE=THETA(1)*EXP(ETA(1)) SLOPE=THETA(2)+ETA(2) BSHZ=THETA(3) BETA=THETA(4) $DES SIZE=BASE+(SLOPE*TIME) TEMP=BETA*SIZE DADT(1)=EXP(TEMP) DADT(2)=EXP(TEMP) $ERROR CMHZ=BSHZ*A(1) HZLA=BSHZ*A(2) IF (TYPE.EQ.1) THEN IPRED=BASE+(SLOPE*TIME) W=THETA(5)*IPRED F_FLAG=0 Y=BASE+(SLOPE*TIME)+W*EPS(1) ENDIF IF(TYPE.EQ.2.AND.DV.EQ.0) THEN Y=EXP(-CMHZ) ENDIF IF(TYPE.EQ.2.AND. DV.EQ.1) THEN Y=EXP(-(CMHZ-HZLA))*(1-EXP(-HZLA)) ENDIF $THETA (0,70,1000); base (0,.12,10); slope (0,.0002,10); bshz (0,.002,1); beta (0,.002,1); $OMEGA 0.03 0.03 $SIGMA 1 FIX $ESTIM METHOD=1 LAPLACE MAXEVAL=9990 MSFO=008.MSF $COV 500.csv Description: Binary data
Kehua, Joint modelling can be performed quite simply with NONMEM VI and 7 by using the F_FLAG variable to indicate to NONMEM what kind of prediction is returned in the Y variable. You have set F_FLAG=0 for the prediction of disease status. However, you also need to set F_FLAG=1 in the code that returns the likelihood of a right censored event and an interval censored event like this: IF(TYPE.EQ.2.AND.DV.EQ.0) THEN ; right censored event F_FLAG=1 Y=EXP(-CMHZ) ENDIF IF(TYPE.EQ.2.AND. DV.EQ.1) THEN ; interval censored event F_FLAG=1 Y=EXP(-(CMHZ-HZLA))*(1-EXP(-HZLA)) ENDIF It is possible to implement this kind of model more easily without having to use two compartments to integrate the hazard. See http://pkpdrx.com/holford/docs/time-to-event-analysis.pdf Slide 28 for the NM-TRAN code and explanatory notes. This simpler method relies upon the ability to 'remember' the value of a random variable so that the survivor function at the time of the start of the interval censoring period (SRVZ) can be saved and used to compute the likelihood of an event in the censoring interval. Best wishes, Nick
Quoted reply history
On 11/12/2010 9:21 a.m., kehua wu wrote: > Dear NMusers, > > I am trying the joint modeling of disease progress and dropout model. NONMEM did not indicate any error, but it looks like did not run it and there is no results. > > I am following Chuanpu Hu and Mak E. Sale's method. Our disease progress model is y= base + (slope * time). Please find the code below and the data file in attachment. > > I would appreciate any feedback. > > Kehua > > $INPUT C ID TIME DV CMT EVID TYPE > $DATA 500.csv IGNORE=C > $SUBS ADVAN6 TOL=6 > $MODEL COMP=(CUMHAZ) > COMP=(HZLAST) > $PK > > BASE=THETA(1)*EXP(ETA(1)) > SLOPE=THETA(2)+ETA(2) > BSHZ=THETA(3) > BETA=THETA(4) > > $DES > SIZE=BASE+(SLOPE*TIME) > TEMP=BETA*SIZE > DADT(1)=EXP(TEMP) > DADT(2)=EXP(TEMP) > > $ERROR > CMHZ=BSHZ*A(1) > HZLA=BSHZ*A(2) > > IF (TYPE.EQ.1) THEN > IPRED=BASE+(SLOPE*TIME) > W=THETA(5)*IPRED > F_FLAG=0 > Y=BASE+(SLOPE*TIME)+W*EPS(1) > ENDIF > > IF(TYPE.EQ.2.AND.DV.EQ.0) THEN > Y=EXP(-CMHZ) > ENDIF > > IF(TYPE.EQ.2.AND. DV.EQ.1) THEN > Y=EXP(-(CMHZ-HZLA))*(1-EXP(-HZLA)) > ENDIF > > $THETA > (0,70,1000); base > (0,.12,10); slope > (0,.0002,10); bshz > (0,.002,1); beta > (0,.002,1); > > $OMEGA > 0.03 > 0.03 > > $SIGMA 1 FIX > > $ESTIM METHOD=1 LAPLACE MAXEVAL=9990 > MSFO=008.MSF > $COV -- Nick Holford, Professor Clinical Pharmacology Dept Pharmacology& Clinical Pharmacology University of Auckland,85 Park Rd,Private Bag 92019,Auckland,New Zealand tel:+64(9)923-6730 fax:+64(9)373-7090 mobile:+64(21)46 23 53 email: [email protected] http://www.fmhs.auckland.ac.nz/sms/pharmacology/holford