From: Johnmo777 
Subject: [NMusers] separate parameter estimates
Date:Wed, 12 Mar 2003 10:21:42 -0800 (PST)

Dear All,

If you would like to obtain separate estimates for a
specific parameter such as Ka based upon, for example,
two different dose formulation groups, is it necessary
to initially set typical values to zero?  For example:

TVKA1=0
TVKA2=0
IF (DOSE.EQ.1) THEN
TVKA1=THETA(1)
KA=TVKA1*EXP(ETA(1))
ENDIF
IF (DOSE.EQ.2) THEN
TVKA2=THETA(2)
KA=TVKA2*EXP(ETA(2))
ENDIF

I ask because when looking at post hoc estimates, I've
noticed that regardless of dose group (1 or 2) every
patient ends up with both typical value estimates of
TVKA1 and TVKA2.  Is this not a problem?  Is there
another way of coding to be sure the correct typical
value is applied to the correct patient?

Thanx,
jm
_______________________________________________________

From:Nick Holford 
Subject: Re: [NMusers] separate parameter estimates
Date:Thu, 13 Mar 2003 07:48:05 +1300

jm,

If you do not assign a value to TVKA1 and TVKA2 then if the conditional DOSE statement is not
executed the last value of the TV variable will be unchanged e.g. If DOSE is 1 then TVKA1 will be
set to THETA(1) but if the next record has a DOSE of 2 then TVKA1 will remain with its previous
value.  This is a Fortran "feature" of static storage for variables. It is nothing directly to do
with the code that NM-TRAN creates.

Note that if the first record has DOSE of 2 then the value of TVKA1 is not explicitly defined. It
will probably be zero because many compilers automatically zero all variables but you should not
rely on this unless you are sure your compiler does this.

TVKA1 and TVKA2 will never be affected by the POSTHOC (or FOCE) options. They are fixed effect not
random variables. KA is a random variable (because it is affected by the random variable ETA(1) or
ETA(2).

In this particular case there is no point in assigning a value to TVKA1 or TVKA2. It would be
simpler and IMHO clearer to write:

;This code assumes every record which does not have DOSE of 1 is a DOSE of 2
IF (DOSE.EQ.1) THEN
   KA=THETA(1)*EXP(ETA(1))
ELSE ; Assume DOSE is 2 by default
   KA=THETA(2)*EXP(ETA(2))
ENDIF

If you use POSTHOC or FOCE then in your $TABLE record you could include DOSE and KA so that you
can determine the individual estimate of KA according to dose group.

Nick
--
Nick Holford, Dept Pharmacology & Clinical Pharmacology
University of Auckland, 85 Park Rd, Private Bag 92019, Auckland, New Zealand
email:n.holford@auckland.ac.nz tel:+64(9)373-7599x86730 fax:373-7556

http://www.health.auckland.ac.nz/pharmacology/staff/nholford/

_______________________________________________________