Re: Modeling biomarker data below the LOQ
Hi Sameer,
Several comments:
--------------------
You did not provide the entire code, but if BL is the observed baseline, it should not be included in the dataset. If you have BL=THETA(*)*EXP(ETA(*)) then the data are fine
--------------------
Additive error is assumed. I would rather use combined error (my guess is that assay STD at DV=65 is larger than STD at DV < LLOQ).
---------------------
M2 method can be implemented using YLO option (BQL observations are included with MDV=1). PRB will give you a model-based probability of
DV > YLO (see YLO EXAMPLE in help).
$ERROR
YLO = LOG1
IF(ASSY.EQ.2) YLO=LOG2
PRB = PR_Y
$EST METH=1 LAPLACIAN SLOW NOABORT
--------------------
I would increase TOL to 9 (if possible). It does not look like a stiff system, so ADVAN6 can be tried
------------------
You have not described the problem: how well these M3 - M4 methods describe your data? If you are not satisfied, could you describe the deficiencies if there are any; these can help to resolve them.
Thanks
Leonid
--------------------------------------
Leonid Gibiansky, Ph.D.
President, QuantPharm LLC
web: www.quantpharm.com
e-mail: LGibiansky at quantpharm.com
tel: (301) 767 5566
Doshi, Sameer wrote:
> Hello,
>
> We are attempting to model suppression of a biomarker, where a number of samples (40-60%) are below the quantification limit of the assay and where 2 different assays (with different quantification limits) were used. We are trying to model these BQL data using the M3 and M4 methods proposed by Ahn et al (2008). I would like to know if anyone has any comments or experience implementing the M3 or M4 methods for biomarker data, where levels are observed at baseline, are supressed below the LOQ for a given duration, and then return to baseline. Also please advise if there are other methods to try and incorporate these BQL data into the model. I have included the relevant pieces of the control file (for both M3 and M4) and data from a single subject. Thanks for your review/suggestions. Sameer DATA:
>
> #ID TIME AMT DV CMT EVID TYPE ASSY
> 1 0 0 65.71 0 0 0 1
> 1 0 120 0 3 1 0 1
> 1 168 0 10 0 0 1 1
> 1 336 0 10 0 0 1 1
> 1 336 120 0 3 1 0 1
> 1 504 0 12.21 0 0 0 1
> 1 672 120 0 3 1 0 1
> 1 1008 0 10 0 0 1 1
> 1 1008 120 0 3 1 0 1
> 1 1344 0 10 0 0 1 1
> 1 1344 120 0 3 1 0 1
> 1 1680 0 10 0 0 1 1
> 1 1680 120 0 3 1 0 1
> 1 2016 0 10 0 0 0 1
> 1 2352 0 25.64 0 0 0 1
> 1 2688 0 59.48 0 0 0 1
>
> MODEL M3:
>
> $DATA data.csv IGNORE=#
> $SUB ADVAN8 TRANS1 TOL=6
> $MODEL
> COMP(central)
> COMP(peri)
> COMP(depot,DEFDOSE)
> COMP(effect)
>
> $DES
>
> DADT(1) = KA*A(3) - K10*A(1) - K12*A(1) + K21*A(2)
> DADT(2) = K12*A(1) - K21*A(2)
> DADT(3) = -KA*A(3)
> CONC = A(1)/V1
> DADT(4) = KEO*(CONC-A(4))
>
> $ERROR
>
> CALLFL = 0
>
> LOQ1=10
>
> LOQ2=20
>
> EFF = BL* (1 - IMAX*A(4)**HILL/ (IC50**HILL+A(4)**HILL))
>
> IPRED=EFF
> SIGA=THETA(7)
> STD=SIGA
> IF(TYPE.EQ.0) THEN ; GREATER THAN LOQ
> F_FLAG=0
> Y=IPRED+SIGA*EPS(1)
> IRES =DV-IPRED
> IWRES=IRES/STD
> ENDIF
> IF(TYPE.EQ.1.AND.ASSY.EQ.1) THEN ; BELOW LOQ1
> DUM1=(LOQ1-IPRED)/STD
> CUM1=PHI(DUM1)
> F_FLAG=1
> Y=CUM1
> IRES = 0
> IWRES=0
> ENDIF
> IF(TYPE.EQ.1.AND.ASSY.EQ.2) THEN ; BELOW LOQ2
> DUM2=(LOQ2-IPRED)/STD
> CUM2=PHI(DUM2)
> F_FLAG=1
> Y=CUM2
> IRES = 0
> IWRES=0
> ENDIF
>
> $SIGMA 1 FIX $ESTIMATION MAXEVAL=9990 NOABORT SIGDIG=3 METHOD=1 INTER LAPLACIAN
>
> POSTHOC PRINT=2 SLOW NUMERICAL
> $COVARIANCE PRINT=E SLOW
>
> MODEL M4:
>
> $DATA data.csv IGNORE=#
> $SUB ADVAN8 TRANS1 TOL=6
> $MODEL
> COMP(central)
> COMP(peri)
> COMP(depot,DEFDOSE)
> COMP(effect)
>
> $DES
>
> DADT(1) = KA*A(3) - K10*A(1) - K12*A(1) + K21*A(2)
> DADT(2) = K12*A(1) - K21*A(2)
> DADT(3) = -KA*A(3)
> CONC = A(1)/V1DADT(4) = KEO*(CONC-A(4))
>
> $ERROR
>
> CALLFL = 0
>
> LOQ1=10
>
> LOQ2=20
>
> EFF = BL* (1 - IMX*A(4)**HILL/ (IC50**HILL+A(4)**HILL))
>
> IPRED=EFF
> SIGA=THETA(7)
> STD=SIGA
> IF(TYPE.EQ.0) THEN ; GREATER THAN LOQ
> F_FLAG=0
> YLO=0
> Y=IPRED+SIGA*EPS(1)
> IRES =DV-IPRED
> IWRES=IRES/STD
> ENDIF
> IF(TYPE.EQ.1.AND.ASSY.EQ.1) THEN
> DUM1=(LOQ1-IPRED)/STD
> CUM1=PHI(DUM1)
> DUM0=-IPRED/STD
> CUMD0=PHI(DUM0)
> CCUMD1=(CUM1-CUMD0)/(1-CUMD0)
> F_FLAG=1
> Y=CCUMD1
> IRES = 0
> IWRES=0
> ENDIF
> IF(TYPE.EQ.1.AND.ASSY.EQ.2) THEN
> DUM2=(LOQ2-IPRED)/STD
> CUM2=PHI(DUM2)
> DUM0=-IPRED/STD
> CUMD0=PHI(DUM0)
> CCUMD2=(CUM2-CUMD0)/(1-CUMD0)
> F_FLAG=1
> Y=CCUMD2
> IRES = 0
> IWRES=0
> ENDIF
>
> $SIGMA 1 FIX $ESTIMATION MAXEVAL=9990 NOABORT SIGDIG=3 METHOD=1 INTER LAPLACIAN
>
> POSTHOC PRINT=2 SLOW NUMERICAL
> $COVARIANCE PRINT=E SLOW
>
> Sameer Doshi
>
> Pharmacokinetics and Drug Metabolism, Amgen Inc.
> (805) 447-6941