From: "David Nix, Pharm D." <nix@pharmacy.arizona.edu>

Subject: Rich data set

Date: Mon, 14 May 2001 10:12:59 -0700

 

I am trying to fit some data involving administration of a drug under four different conditions. The individual data exhibit good fits using a one-compartment model with first order absorption and first order elimination, except that a lag time is necessary in most cases. The data consists of 16 subjects each being administered 4 different treatments. There are 15 samples available per subject. I deleted all "0" concentrations at the end of each profile, and some of the 0 concentrations between the dose and first detectable concentration.

 

I am having two problems: 1. the lag time is not handled very well. An estimate for lag time was 98.9 hours for the run using the control steam below. If I set an upper bound, the estimate approaches this bound.

2. Errors NO. OF SIG. DIGITS IN FINAL EST.: 3.1 (sometimes unreportable), R MATRIX ALGORITHMICALLY SINGULAR, COVARIANCE MATRIX UNOBTAINABLE, S MATRIX ALGORITHMICALLY SINGULAR. I have tried many things to get around these problems including using different residual error models, etc. I have included at least one "0.0" concentration in the data at the time prior to the first measurable concentration following the dose.

 

The control stream follows:

 

$PROBLEM POPULATION DATA

$INPUT ID PERD TX SEQ DOSE=AMT TIME DV AGE SEX RACE SMOK

$INPUT HT WT BMI LBW CLCR

$DATA LOFAZ2.PRN

$SUBROUTINES ADVAN2 TRANS2

 

$PK

TVKA=THETA(1)

TVCL=THETA(2)

TVV=THETA(3)

 

KA=TVKA*EXP(ETA(1))

CL=TVCL*EXP(ETA(2))

V=TVV*EXP(ETA(3))

S2=V

 

ALAG1=THETA(4)*EXP(ETA(4))

 

>>>IF(TX.EQ.1) TVLAG=2.34

>>>IF(TX.EQ.2) TVLAG=1.67

>>>IF(TX.EQ.3) TVLAG=2.14

>>>IF(TX.EQ.4) TVLAG=2.43

; I have tried fixing the lag time given the best estimates of the mean from individual estimates.

; ALAG1=TVLAG*EXP(ETA(4))

 

$ERROR

DEL=0

IF(F.EQ.0) DEL=1

IPRED=F

W=(F**2+THETA(5)**2)**0.5

W=W+DEL

IRES=DV-IPRED

IWRES=IRES/W

PHI2=1

IF(TX.EQ.2) PHI2=THETA(6)

PHI3=1

IF(TX.EQ.3) PHI3=THETA(7)

PHI4=1

IF(TX.EQ.4) PHI4=THETA(8)

 

Y=(IPRED+W*EPS(1))*PHI2*PHI3*PHI4

 

; PHI2 is the relative bioavailability of treatment 2 compared to treatment 1

; PHI3 is the relative bioavailability of treatment 3 compared to treatment 1

; PHI4 is the relative bioavailability of treatment 4 compared to treatment 1

; All treatments involve administration of the same drug and dose; however, Tx1 is fasting, Tx2 is ; with food, Tx3 is w/acidic juice and Tx4 is w/ antacid

 

$THETA (0,1.0) (0,202) (0,1270) (0,2) (0,0.05)

$THETA (0,1.5) (0,1) (0,.94)

$OMEGA 0.25 0.25 0.25 0.25

 

$ESTIMATION METHOD=0 POSTHOC MAXEVAL=1000 NOABORT

$COVR

 

Any suggestions on revised coding or troubleshooting would be greatly appreciated.

 

*****

 

From: "Gibiansky, Leonid" <gibianskyl@globomax.com>

Subject: RE: Rich data set

Date: Mon, 14 May 2001 13:42:03 -0400

 

I would use

 

METHOD=1 INTERACTION

 

simplify the error structure as:

 

$ERROR

IPRED=F

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

 

and include bioavailability into the model as

 

F1=1

IF(TX.EQ.2) F1=THETA(6)

IF(TX.EQ.3) F1=THETA(7)

IF(TX.EQ.4) F1=THETA(8)

 

Hope this helps,

Leonid

 

*****

 

From: "David Nix, Pharm D." <nix@pharmacy.arizona.edu>

Subject: Re: Rich data set

Date: Mon, 14 May 2001 14:38:42 -0700

 

Thanks Leonid Gibiansky for your suggestion. I tried the following control stream:

 

$PROBLEM POPULATION DATA

$INPUT ID PERD TX SEQ DOSE=AMT ATIM TIME DV AGE SEX RACE SMOK

$INPUT HT WT BMI LBW CLCR

$DATA CLOFAZ3.PRN

$SUBROUTINES ADVAN2 TRANS2

 

$PK

TVKA=THETA(1)

TVCL=THETA(2)

TVV=THETA(3)

 

KA=TVKA*EXP(ETA(1))

CL=TVCL*EXP(ETA(2))

V=TVV*EXP(ETA(3))

S2=V

 

ALAG1=THETA(4)*EXP(ETA(4))

 

F1=1

IF(TX.EQ.2) F1=THETA(5)

IF(TX.EQ.3) F1=THETA(6)

IF(TX.EQ.3) F1=THETA(7)

 

$ERROR

 

IPRED=F

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

 

$THETA (0,1.0) (0,202) (0,1270) (0,2)

$THETA (0,1.5) (0,1) (0,.94)

$OMEGA 0.25 0.25 0.25 0.25

$ESTIMATION METHOD=1 INTERACTION POSTHOC MAXEVAL=9000 NOABORT

$COVR

 

The error message was:

 

0MINIMIZATION TERMINATED

DUE TO PROXIMITY OF LAST ITERATION EST. TO A VALUE

AT WHICH THE OBJ. FUNC. IS INFINITE (ERROR=136)

0AT THE LAST COMPUTED INFINITE VALUE OF THE OBJ. FUNCT.:

ERROR IN NCONTR WITH INDIVIDUAL 5 ID= .50000000E+01

NUMERICAL HESSIAN OF OBJ. FUNC. FOR COMPUTING CONDITIONAL ESTIMATE

IS NON POSITIVE DEFINITE

THETA=

2.48E-01 7.80E+01 5.27E+03 1.44E+00 1.32E+00 1.00E+00

2.15E+02

 

NO. OF FUNCTION EVALUATIONS USED: 1131

NO. OF SIG. DIGITS UNREPORTABLE

 

ETABAR IS THE ARITHMETIC MEAN OF THE ETA-ESTIMATES,

AND THE P-VALUE IS GIVEN FOR THE NULL HYPOTHESIS THAT THE TRUE MEAN IS

0.

 

ETABAR: .35E+00 .83E+00 -.70E+00 -.62E+00

 

P VAL.: .13E-01 .65E-01 .11E+00 .10E-02

 

 

The error made be think about a possible data coding problem

 

ID PERD TX SEQ DOSE=AMT TIME DV AGE SEX RACE SMOK HT WT BMI LBW CLCR

 

Originally I had:

 

ID =1, Tx=1, dose=200 then several lines for concentrations

ID =1, Tx=2, dose=200 then several lines for concentrations.

ID =1, Tx=3, dose=200 then several lines for concentrations

....

This did not work since the times were interpreted out of sequence - so I provided a single dose then
time 1, Tx 1, conc

time 1, Tx 2, conc

time 1, Tx 3, conc

time 1, Tx 4, conc

......

 

I then recoded data with new times: (note two weeks washout between doses)

Tx provided during period 1 = time

Tx provided during period 2 = time + 336

Tx provided during period 3 = time + 672

Tx provided during period 4 = time + 1008

 

After fixing the data set and re running some of my previous control streams, I got the program to run without errors.

 

*****

 

From: "Bachman, William" <bachmanw@globomax.com>

Subject: RE: Rich data set

Date: Wed, 23 May 2001 14:02:35 -0400

 

David,

 

You might try something like the following which allows all absorption related parameters (KA, ALAG1 & F1) to vary except the bioavailability of the reference formulation, which is fixed to one. Your data may sufficiently dense and informative to support all these parameters. It's worked for me for multiple formulations to allow assessment of relative F. Use FOCE with INTERACTION if possible.

 

Bill

 

William J. Bachman, Ph.D.

GloboMax LLC

7250 Parkway Dr., Suite 430

Hanover, MD 21076

Voice (410) 782-2212

FAX (410) 712-0737

bachmanw@globomax.com

 

$PK

 

TVCL=THETA(1)

TVV=THETA(2)

CL=TVCL*EXP(ETA(1))

V=TVV*EXP(ETA(2))

S2=V

 

;these 3 lines keep NONMEM from complaining about the if-then-elses

F1=1

KA=1

ALAG1=0

;reference formulation 1

IF (FORM.EQ.1) THEN

F1 =1.0

KA =THETA(3)*EXP(ETA(3))

ALAG1=THETA(4)+ETA(4) ;could also try expo iiv

ENDIF

;formulation 2

IF (FORM.EQ.2) THEN

F1 =THETA(5)*EXP(ETA(5))

KA =THETA(6)*EXP(ETA(6))

ALAG1=THETA(7)+ETA(8)

ENDIF

;formulation 3

IF (FORM.EQ.3) THEN

F1 =THETA(9)*EXP(ETA(9))

KA =THETA(10)*EXP(ETA(10))

ALAG1=THETA(11)+ETA(11)

ENDIF

;formulation 4

IF (FORM.EQ.4) THEN

F1 =THETA(12)*EXP(ETA(12))

KA =THETA(13)*EXP(ETA(13))

ALAG1=THETA(14)+ETA(14)

ENDIF