NONMEM Users Network Archive

Hosted by Cognigen

Re: NONMEM code for Mixture Model

From: Huali Wu <hualiw>
Date: Fri, 13 Mar 2009 12:58:31 -0400

Dear Dr. Grevel:

Thank you for your suggestion. I have tried your code before I think of =
the mixture model. And what I observed is the different distribution of =
ETA between these two groups of patients (not just the mean but also the =
variance). That's why I tried to use different ETA for each subgroup. =
But I never see a covariate model like the way I did. So I am not sure =
if it is an appropriate way to deal with this situation.

Thanks,

Best regards,

Huali


  ----- Original Message -----
  From: Joachim.Grevel
  To: Huali Wu ; nmusers
  Sent: Friday, March 13, 2009 11:32 AM
  Subject: Re: [NMusers] NONMEM code for Mixture Model



  Dear Huali,

  this touches basic model building. Below would be a possible way to =
code. The reason why you code is not smart for a first step in model =
building is taught in any NONMEM beginner workshop. I apologize for =
sounding a little terse.

  TVVM = THETA(1)*TYPE+THETA(2)*(1-TYPE)
  VM=TVVM*EXP(ETA(1))

  Joachim
  __________________________________________
  Joachim GREVEL, Ph.D.
  Merck Serono S.A. - Genève
  Human Pharmacology
  1202 Geneva
  Tel: +41.22.414.4751
  Fax: +41.22.414.3059
  Email: joachim.grevel




        "Huali Wu" <hualiw
        03/13/2009 03:56 PM
       To <nmusers
              cc
              Subject Re: [NMusers] NONMEM code for Mixture Model

              

       



  Dear Dr. Grevel:
    
  Thank you very much for your detailed suggestions and comments. I have =
tried the codes and it works. But as you suggested, I think I should try =
to divide patients into subgroups according to their disease state. Can =
I incorporate this into covariate model as below?
    
  VM = THETA(1)*TYPE*EXP(ETA(1))+THETA(2)*(1-TYPE)*EXP(ETA(2))
    
  Where, TYPE =0 for patients without this disease and TYPE=1 for =
patients with this disease.
    
  Will this covariate model be acceptable?
    
  Thanks again,
    
  Best regards,
    
  Huali


  ----- Original Message -----
  From: Joachim.Grevel
  To: nmusers
  Sent: Friday, March 13, 2009 3:23 AM
  Subject: Re: [NMusers] NONMEM code for Mixture Model


  Dear Huali,

  you also need some code which specifies what is different between the =
populations. The differences could be ETAs (but do not have to be!) or =
certain factors which allow a PK parameter to have a different typical =
value in one population.

  EST=MIXEST
  IF(MIXNUM.EQ.2)THEN
  V1=TVV1*EXP(ETA(3))
  VM=THETA(x)*TVVM*EXP(ETA(4))
  ELSE
  V1=TVV1*EXP(ETA(1))
  VM=TVVM*EXP(ETA(2))
  ENDIF

  The for the $OMEGA block you have two options:

  either:
  $OMEGA BLOCK(2) 0.1 ;ETA1 for V1 for =
population 1
                 0.01 0.1 ;ETA2 for VM for =
population 1
  $OMEGA BLOCK(2) SAME ;ETA3 ETA4 for population =
2

  or:
  $OMEGA BLOCK(2) 0.1 ;ETA1 for V1 for =
population 1
                 0.01 0.1 ;ETA2 for VM for =
population 1
  $OMEGA BLOCK(2) 0.1 ;ETA3 for V1 for =
population 2
                 0.01 0.1 ;ETA4 for VM for =
population 2

  But you still face a more fundamental question: Why do you want to =
define two populations when you already know that "patients in different =
disease states seems have different distribution of clearance". I use =
the Mixture models solely when the source of variability is still =
unknown and when it is clear that a normal distribution will not be =
adequate (ETABAR message with p<0.05). In you case I would build the =
knowledge about the influence of the disease states directly into the =
code which specifies only one population.

  Good luck,

  Joachim

  __________________________________________
  Joachim GREVEL, Ph.D.
  Merck Serono S.A. - Genève
  Human Pharmacology
  1202 Geneva
  Tel: +41.22.414.4751
  Fax: +41.22.414.3059
  Email: joachim.grevel



        nidal.alhuniti
        Sent by: owner-nmusers
        03/12/2009 08:44 PM
       
              To Huali Wu <hualiw
              cc nmusers
              Subject Re: [NMusers] NONMEM code for Mixture Model


              

       




  Hi Huali,
  You could use $MIX. Please see the NM help files for $MIX. You have to =
specify the number of populations (in your case 2) so
   
  $MIX
     NSPOP=2
     P(1)=THETA(4)
     P(2)=1.-THETA(4)
   
  Then use
  EST= MIXEST
   
  Hopefully this helps.
  Best,
  Nidal
   
  Nidal AL-Huniti, PhD
  Associate Director, Modeling and Simulations
  ICON Development Solutions SM


  On 3/12/09, Huali Wu <hualiw
  Dear NMusers:
   
  I am working on dataset with high variability on clearance and =
patients in different disease states seems have different distribution =
of clearance. So I want to try the mixture model but I don't know how to =
do the coding. I listed the code of my base model as below:
   
  $PROB 1hr IV INFUSION SINGLE DOSE WITHOUT COVARIATES
  $DATA data01.CSV IGNORE=C
  $INPUT ID TIME DV AMT RATE MDV
   
  $SUBROUTINES ADVAN9 TRANS1 TOL=5
  $MODEL NPAR=3, NCOMP=1, COMP=(CENTRAL,DEFOBS)
   
  $PK
          V1 = THETA(1)*EXP(ETA(1))
          VM = THETA(2)*EXP(ETA(2))
          KM = THETA(3)
         
           S1 = V1
        
   
  $ERROR

  Y=F+F*EPS(1)+EPS(2)

  IPRED=F
  IRES=DV-IPRED
  IF(AMT.NE.0)W=1
  IF(AMT.EQ.0)W=F
  IWRES=IRES/W
   
  $DES
        C1 = A(1)/V1
        DADT(1) = - C1*VM/(KM+C1)
                           
   
  $THETA (0, 4.47) (0, 155) (0, 1380)
  $OMEGA BLOCK (2)
  0.5
  0.3 0.9
   
  $SIGMA (0.01) (0.1)
   
  $EST POSTHOC METHOD=1 MAXEVAL=9990 PRINT=5
  $COV
  $TABLE ID TIME DV AMT RATE V1 VM KM IWRES IPRED NOPRINT =
FILE=TAB4 ONEHEADER
  $SCAT (RES WRES) VS TIME BY ID
   
  Any suggestion will be highly appreciated!
   
  Best regards,
   
  Huali

   

  This message and any attachment are confidential and may be privileged =
or otherwise protected from disclosure. If you are not the intended =
recipient, you must not copy this message or attachment or disclose the =
contents to any other person. If you have received this transmission in =
error, please notify the sender immediately and delete the message and =
any attachment from your system. Merck KGaA, Darmstadt, Germany and any =
of its subsidiaries do not accept liability for any omissions or errors =
in this message which may arise as a result of E-Mail-transmission or =
for damages resulting from any unauthorized changes of the content of =
this message and any attachment thereto. Merck KGaA, Darmstadt, Germany =
and any of its subsidiaries do not guarantee that this message is free =
of viruses and does not accept liability for any damages caused by any =
virus transmitted therewith.

  Click http://disclaimer.merck.de to access the German, French, Spanish =
and Portuguese versions of this disclaimer.



Received on Fri Mar 13 2009 - 12:58:31 EDT

The NONMEM Users Network is maintained by ICON plc. Requests to subscribe to the network should be sent to: nmusers-request@iconplc.com.

Once subscribed, you may contribute to the discussion by emailing: nmusers@globomaxnm.com.