Pardon what may be a trivial question from someone used to using ADAPT for individual Bayesian fits. I have reviewed Part IV of the manual and am uncertain about some items. In ADAPT, prior estimates and their variances of the previously studied population are entered in the control stream, while the estimates of the error model (usually linear or polynomial) is entered elsewhere.
I think I understand that to use a group ("population") of subjects with full or limited sampling to determine mean values of THETA and of the individual ETAs, one would use the FOCE method: METHOD=CONDITIONAL (or "1"), which would provide tempering of extreme estimates of individual ETAs from the patient data in the input file. My understanding is that the initial estimates of THETA and of ETA are indeed estimates, and that they provide no understanding of the final estimates of THETAs and ETAs. (Please correct me if I misunderstand this)
However, it is not clear to me how to code the control stream when previous data regarding the estimates of THETA and ETA are known, so that the evaluation of the local patient data includes for example the THETA and variance (ETA) estimates of published PK parameters as well as including the new data from the more recent data set being evaluated. Can someone shed light on this?
Also, if it is possible to do so, is there strong feeling about isolating or decreasing the weight of data obtained from parsimonious sampling when the posthoc estimation of the individuals' ETAs are determined?
Thanks. As always, please excuse me if these are trivial questions. There is always a feeling of discomfort when one transmits one's ignorance around the world.
Paul Hutson, Pharm.D.
Associate Professor (CHS)
UW School of Pharmacy
NOTE NEW ADDRESS effective 6/2001
777 Highland Avenue
Madison, WI 53705-2222
Tel: (608) 263-2496
FAX: (608) 265-5421
Pager: (608) 265-7000, #7856
From: Pierre Maitre <firstname.lastname@example.org>
Subject: Re: [NMusers] Bayesian fits
Date: Mon, 05 Nov 2001 12:25:28 +0100
Paul Hutson a écrit :
> However, it is not clear to me how to code the control stream when previous
> data regarding the estimates of THETA and ETA are known,
Long time ago, I used to do this with a PRED routine that I wrote
myself, and I must say that I have never tried with NMTRAN.
However, I believe that the following NMTRAN code should work:
$PROB xxxxxxxxxn 2cpt sc and iv
$DATA ../data/xxxxxx_PK.nm NOREWIND
$INPUT ID TIME SESS CMT TTMT GEND AGE HEIG WEIG DOSE=AMT RATE CP=DV
AS NEOP B2MI MDV EVID
$SUBROUTINES ADVAN4 TRANS4
CL = THETA(1)*EXP(ETA(1))
V2 = THETA(2)
Q = THETA(3)*EXP(ETA(2))
V3 = THETA(4)
KA = THETA(5)*EXP(ETA(3))
S2 = V2
Y = F*EXP(EPS(1))
;" WRITE(6,*) Y
$THETA 4.65 FIXED
$OMEGA 0.301 FIXED 0.0673 FIXED 1.68 FIXED
$ESTIM PRINT=3, MAXEVAL=9999, POSTHOC
$TABLE UNCONDITIONAL NOPRINT ONEHEADER FILE= sdtab
ID TIME SESS CMT TTMT DOSE RATE CP IPRED IRES IWRES
$TABLE UNCONDITIONAL NOPRINT ONEHEADER FILE= indiv_param
ID CL V2 Q V3 KA
$SCATTER RES VS PRED
$SCATTER PRED VS CP UNIT
$SCATTER WRES VS PRED
$SCATTER RES VS TIME
$SCATTER RES VS ID
$SCATTER WRES VS ID
Dr Pierre-O. Maitre
FMH Pharmacologie Clinique
Cabinet médical / A la Joy
CH-1272 Genolier Switzerland
From: Ruediger Port <email@example.com>
Subject: [NMusers] Bayesian fits
Date: Wed, 7 Nov 2001 08:45:05 -0800 (PST)
In case you didn't get a complete answer:
Here is another example of a control file that
gets individual Bayesian parameter estimates
without re-estimating the population parameters:
$PROBLEM individual Bayesian parameter estimates
$INPUT ID DV
$DATA newdata IGNORE=#
$PRED Pi = THETA(1) + ETA(1)
Y = Pi + EPS(1) ; a simple model
; Population parameters from the literature:
$ESTIM MAXEVALS=0 POSTHOC
$TABLE ID Pi NOPRINT ONEHEADER FILE=tablefile
I wouldn't do any weighting of data from parsimonious sampling
because the Bayesian fit already implies that the fewer the
the individual data are the less their impact is on the estimated
Good luck! Ruedi
Dr. R.E. Port, German Cancer Research Center, D-0200
P.O. Box 10 19 49, D-69009 Heidelberg, Germany
phone: +49-6221 42-3385
From: Ruediger Port <firstname.lastname@example.org>
Subject: RE: [NMusers] Bayesian fits
Date: Wed, 7 Nov 2001 10:38:18 -0800 (PST)
here as a $PK control file for estimating individual Bayes parameters when the population parameters are supposedly known. The principle is just to set MAXEVALS = 0 in $ESTIMATION (to prevent the population parameters from being re-estimated) and to request the POSTHOC step. The individual Bayes parameters can then be written to the output table by specifying them in $TABLE.
Good luck! Ruedi
; ka1.PK.control: linear one-compartment model, central elimination,
; peroral administration
$PROBLEM first-order absorption
$INPUT ID TIME EVID CMT PCMT CP=DV MG=AMT RATE
$DATA data IGNORE=#
$SUBROUTINES ADVAN2 TRANS2
$PK KA = THETA(1)*EXP(ETA(1))
CL = THETA(2)*EXP(ETA(2)) ; CL/F
V = THETA(3)*EXP(ETA(3)) ; V/F
S2 = V
;" if (F.LE.0.) print *,"F",F ; verbatim print statement - sometimes
; useful when things are going wrong ...
; use it without $ESTIMATION otherwise
; report file will clog your hard disk
mep = F ; "mixed-effects prediction"
Y = F + F*EPS(1)
$THETA 1.52 ; mean ka (1/h)
5.46 ; mean CL (L/h)
23.2 ; mean V (L)
$OMEGA .66 .246 .32 ; omega^2: ka, CL, V
$SIGMA .026 ; sigma^2
$ESTIMATION PRINT=1 MAXEVALS=0 POSTHOC
$TABLE ID TIME PCMT EVID AMT KA CL V mep
NOPRINT ONEHEADER FILE=anmtable
From: Nick Holford <email@example.com>
Subject: Re: [NMusers] Bayesian fits
Date: Thu, 08 Nov 2001 09:47:54 +1300
> I think I understand that to use a group ("population") of subjects
> full or limited sampling to determine mean values of THETA and of the
> individual ETAs, one would use the FOCE method:
> METHOD=CONDITIONAL (or "1"), which would provide tempering of extreme
> estimates of individual ETAs from the patient data in the input file.
While I agree with you that FOCE may indeed provide better estimates of THETA et al. this is something of a red herring because the use of this particular estimation method is not *necessary* in order to get Bayesian individual estimates.
> understanding is that the initial estimates of THETA and of ETA are indeed
> estimates, and that they provide no understanding of the final estimates of
> THETAs and ETAs. (Please correct me if I misunderstand this)
I have found it personally helpful to take care to distinguish between a prior data set (and the estimates, population or individual, that arise from it) and the current data set (and its population and individual estimates). In the situation described below (MAXEVAL=0 method), the initial population estimates (from prior data) are identical to the final population estimates but the individual estimates are for the current data individuals.
> However, it is not clear to me how to code the control stream when
> data regarding the estimates of THETA and ETA are known, so that the
> evaluation of the local patient data includes for example the THETA and
> variance (ETA) estimates of published PK parameters as well as including
> the new data from the more recent data set being evaluated. Can someone
> shed light on this?
I think you are describing the case where you have prior population estimates but do not have the data e.g. you are using literature estimates. You have a current data set (perhaps just one observation in a single subject and wish to obtain individual estimates from the current data based only on the prior population estimates. This is the usual situation when applied to dose forecasting using target concentration intervention (aka therapeutic drug monitoring). The current data individual estimates are called maximum a posteriori (MAP) Bayesian estimates. The suggestions made e.g. by Ruedi Port, show how to obtain these using the MAXEVAL=0 technique. If you use FO estimation then you need to use the POSTHOC option. If you use FOCE you do not need to specify POSTHOC. In both cases you need to include the parameters in the $TABLE output in order to see the MAP Bayesian individual estimates.
There are 2 other approaches you might consider to obtain current data individual estimates. They both rely on updating the prior population estimates by merging information from the prior and current data to obtain a new set of population estimates which are then used to compute MAP Bayesian estimates for the current data set individuals. Note the critical difference from the MAXEVAL=0 method is that MAXEVAL is not used to stop estimation of the population estimates. A new set of population estimates is obtained using these methods.
The 2 approaches are:
1. Pooled Data: This is straightforward assuming you have the prior data. Simply pool the prior and current data sets and estimate parameters using the pooled data. Use FO+POSTHOC or FOCE as before to get the MAP Bayesian individual estimates plus as a bonus an updated set of population parameters.
2. Hierarchical Bayesian: This has been discussed several times before on nmusers e.g. http://www.cognigencorp.com/nonmem/nm/99aug052000.html, but recent threads are hard to find. (I note that the Cognigen hosted web page http://www.cognigencorp.com/nonmem/nm/ says "The last update was February 8, 2000." but also says that the archive has "Postings from 3/31/95 - 8/31/01" but I cannot find anything later than 98apr042001.html using their search engine. Looks like 4 Apr 2001 is the posterior Bayesian estimate of the Feb 8 2000 prior and 31 August 2001 (not quite) current data :-) ).
The hierarchical Bayesian (aka NONMEM PRIOR) approach uses the prior population parameters *with estimates of their uncertainty* (both together constitute the Bayesian "prior" distribution) and the current data to obtain Bayesian posterior estimates of the population parameters. The popln parameters will be updated (unlike the MAXEVAL=0 method) even though the only data that is used is from the current data set. The individual parameters are still MAP Bayesian estimates but based on the updated population (Bayesian posterior) estimates. Note that this method is unsupported by the NONMEM Project Group (and I assume also by nmconsult@globomaxnm).
Bottom line, if you have the prior data then my own preference is to pool the data. I consider this the gold standard because it is totally based on the actual data you have rather than on various assumptions about the uncertainty of the prior estimates that are implicit in the hierarchical Bayesian approach.
Nick Holford, Divn Pharmacology & Clinical Pharmacology
University of Auckland, 85 Park Rd, Private Bag 92019, Auckland, New Zealand
email:firstname.lastname@example.org tel:+64(9)373-7599x6730 fax:373-7556
From: Jill Fiedler-Kelly <email@example.com>
Subject: Re: [NMusers] Bayesian fits - NONMEM UsersNet Archive
Date: Wed, 07 Nov 2001 17:06:30 -0500
Thanks for pointing out the date inconsistencies on the archive page.
The postings which are accessible at the archive site now should be those up until May 2, 2001. We detected a problem with the more recent ones and have pulled them until they can be fixed. Those from May 3 - August 31 should be live by the end of the week.
We apologize for any inconvenience this may have caused and are working to correct the situation now.
(formerly Pharmaceutical Outcomes Research, Inc.)
395 Youngs Road
Buffalo, NY 14221
(v) 716.633.3463, ext. 228