RE: [NMusers] IIV on %CV-Scale - Standard Error (SE)

2008-02-15 Thread Mouksassi Mohamad-Samer
Hello Jakob,

I remember I developed code at one point to calculate a SE on a typical 
clearance which was a function of four covariates..

The general method is to use formula incorporating partial derivatives with 
respect to each parameter.

http://www.itl.nist.gov/div898/handbook/mpc/section5/mpc55.htm  this link gives 
good background information.


The S-plus piece of code that can be used is :


OM1  - 0.16 
SE1 - 0.04  

# PERCENTOM1- sqrt(OM1) # the expression to calculate a standard error on it

D - deriv(~ sqrt(OM1) ,
c(OM1),function(OM1) NULL, formal=T)


DERIV - D(OM1)   # .grad[, OM1] - 0.5 * (OM1^-0.5) 
which is 1/ 2 . SQRT(OM1)
PARDERIV - attr(DERIV,gradient)

PERCENTOM1SE- sqrt ( (PARDERIV[1]*SE1)^2)


For this simple example computing partial derivative by hand is easy but for 
more complex formulas things can be tricky and S-plus can calculate this for 
you.

http://statpages.org/erpropgt.html this link calculates SE of function of up to 
two variables.

Hope this helps,



Samer Mouksassi











-Original Message-
From: [EMAIL PROTECTED] on behalf of Ribbing, Jakob
Sent: Fri 2/15/2008 04:03
To: NONMEM users forum
Cc: varun goel; [EMAIL PROTECTED]
Subject: [NMusers] IIV on %CV-Scale - Standard Error (SE)
 
Hi all,

I think that Paul stumbled on a rather important issue. The SE of the residual 
error may not be of primary interest, but the same as discussed under this 
thread also applies to the standard error of omega. (I changed the name of the 
subject since this thread now is about omega)

I prefer to report IIV on the %CV scale, i.e. sqrt(OMEGAnn) for a parameter 
with log-normal distribution. It then makes no sense to report the standard 
error on any other scale. For log-normally distributed parameters the relative 
SE of IIV then becomes:
sqrt(SE.OMEGAnn)/(2*sqrt(OMEGAnn))*100%

Notice the factor 2 in the denominator. I got this from Mats Karlsson who 
picked it up from France Mentré, but I have never seen the actual mathematical 
derivation for this formula. I think this is what Varun is doing in his e-mail 
a few hours ago. However, I am not sure; being illiterate I could not 
understand the derivation. Either way, if we are satisfied with the 
approximation of IIV as the square root of omega, the factor 2 in the 
approximation of the SE on the %CV-scale is exact enough.

If you would like to convince yourself of that the factor 2 is correct (up to 3 
significant digits), you can load the below Splus function and then run with 
different CV:s, e.g:
ratio(IIV=1)
ratio(IIV=0.5)

Regards

Jakob


ratio - function (IIV.stdev=1) {
ncol - 1000 #1000 Studies, in which IIV is estimated
ETAS - rnorm(n=1000*ncol, 0, IIV.stdev)
ETA  - matrix(data=ETAS, ncol=ncol)
IIVs.stds- colStdevs(ETA) #Estimate of IIV on sd-scale
IIVs.vars- colVars(ETA)   #Estimate of IIV on var-scale

SE.std  - stdev(IIVs.stds)/sqrt(ncol)
SE.var  - stdev(IIVs.vars)/sqrt(ncol)
CV.std  - SE.std/IIV.stdev
CV.var  - SE.var/(IIV.stdev^2)
print(paste(SE on Var scale:, SE.var))
print(paste(SE on Std scale:, SE.std))
print(paste(Ratio CV var, CV std:, CV.var/CV.std))
invisible()
}




From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of varun goel
Sent: 14 February 2008 23:07
To: [EMAIL PROTECTED]; NONMEM users forum
Subject: Re: [NMusers] Combined residual model and IWRES.

Dear Paul, 

You can use the delta method to compute the variance and expected value of a 
transformation, which is square in your case.

given y=theta^2


E(y)=theta^2
Var(y)=Var(theta)+(2*theta)^2 ; the later portion is square of the first 
derivative of  y with respect of theta. 

In your example theta is the standard deviation whereas error estimate is 
variance. I did not follow your values very well, so I ran a model with same 
reparameterization and got following results.

theta=2.65, rse=27.2%
err=7.04; rse=54.4%

theta.1-2.65
rse-27.2 
var.theta.1-(rse*theta.1/100)^2  ## = 0.51955 

err.1-7.04
rse.err.1-54.4#%
var.err.1-(rse.err.1*err.1/100)^2 ##  = 14.66

##now from delta method
 
E(err)=2.65^2 ## 7.025 close to 7.04
var(err)=(2*2.65)^2*0.51955 ##   14.59 close to 14.66

Hope it helps

Varun Goel
PhD Candidate, Pharmacometrics
Experimental and Clinical Pharmacology
University of Minnesota



RE: [NMusers] IIV on %CV-Scale - Standard Error (SE)

2008-02-15 Thread Ken Kowalski
Hi Jakob,

The derivation for your expression comes from a first-order approximation of
the variance often referred to as the delta method in the statistical
literature.  The approximation is:

Var(f(x)) ~= [f'(x)^2]Var(x) or equivalently, SE(f(x)) ~= f'(x)SE(x)

If we want SE(omega) but have the SE(omega^2) then x=omega^2 and
f(x)=omega=x^0.5.  Using the first-order approximation we have

SE(omega) = SE(f(x)) 
  = SE(x^0.5)
  = f'(x)SE(x)
  = 0.5(x^-0.5)SE(x) and substituting x=omega^2
  = 0.5(omega^-1)SE(omega^2)
  = SE(omega^2)/(2*omega)

Kind regards,

Ken

Kenneth G. Kowalski
President  CEO
A2PG - Ann Arbor Pharmacometrics Group
110 E. Miller Ave., Garden Suite
Ann Arbor, MI 48104
Work:  734-274-8255
Cell:  248-207-5082
[EMAIL PROTECTED]



-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Ribbing, Jakob
Sent: Friday, February 15, 2008 4:03 AM
To: NONMEM users forum
Cc: varun goel; [EMAIL PROTECTED]
Subject: [NMusers] IIV on %CV-Scale - Standard Error (SE)

Hi all,

I think that Paul stumbled on a rather important issue. The SE of the
residual error may not be of primary interest, but the same as discussed
under this thread also applies to the standard error of omega. (I changed
the name of the subject since this thread now is about omega)

I prefer to report IIV on the %CV scale, i.e. sqrt(OMEGAnn) for a parameter
with log-normal distribution. It then makes no sense to report the standard
error on any other scale. For log-normally distributed parameters the
relative SE of IIV then becomes:
sqrt(SE.OMEGAnn)/(2*sqrt(OMEGAnn))*100%

Notice the factor 2 in the denominator. I got this from Mats Karlsson who
picked it up from France Mentré, but I have never seen the actual
mathematical derivation for this formula. I think this is what Varun is
doing in his e-mail a few hours ago. However, I am not sure; being
illiterate I could not understand the derivation. Either way, if we are
satisfied with the approximation of IIV as the square root of omega, the
factor 2 in the approximation of the SE on the %CV-scale is exact enough.

If you would like to convince yourself of that the factor 2 is correct (up
to 3 significant digits), you can load the below Splus function and then run
with different CV:s, e.g:
ratio(IIV=1)
ratio(IIV=0.5)

Regards

Jakob


ratio - function (IIV.stdev=1) {
ncol - 1000 #1000 Studies, in which IIV is estimated
ETAS - rnorm(n=1000*ncol, 0, IIV.stdev)
ETA  - matrix(data=ETAS, ncol=ncol)
IIVs.stds- colStdevs(ETA) #Estimate of IIV on sd-scale
IIVs.vars- colVars(ETA)   #Estimate of IIV on var-scale

SE.std  - stdev(IIVs.stds)/sqrt(ncol)
SE.var  - stdev(IIVs.vars)/sqrt(ncol)
CV.std  - SE.std/IIV.stdev
CV.var  - SE.var/(IIV.stdev^2)
print(paste(SE on Var scale:, SE.var))
print(paste(SE on Std scale:, SE.std))
print(paste(Ratio CV var, CV std:, CV.var/CV.std))
invisible()
}




From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of varun goel
Sent: 14 February 2008 23:07
To: [EMAIL PROTECTED]; NONMEM users forum
Subject: Re: [NMusers] Combined residual model and IWRES.

Dear Paul, 

You can use the delta method to compute the variance and expected value of a
transformation, which is square in your case.

given y=theta^2


E(y)=theta^2
Var(y)=Var(theta)+(2*theta)^2 ; the later portion is square of the first
derivative of  y with respect of theta. 

In your example theta is the standard deviation whereas error estimate is
variance. I did not follow your values very well, so I ran a model with same
reparameterization and got following results.

theta=2.65, rse=27.2%
err=7.04; rse=54.4%

theta.1-2.65
rse-27.2 
var.theta.1-(rse*theta.1/100)^2  ## = 0.51955 

err.1-7.04
rse.err.1-54.4#%
var.err.1-(rse.err.1*err.1/100)^2 ##  = 14.66

##now from delta method
 
E(err)=2.65^2 ## 7.025 close to 7.04
var(err)=(2*2.65)^2*0.51955 ##   14.59 close to 14.66

Hope it helps

Varun Goel
PhD Candidate, Pharmacometrics
Experimental and Clinical Pharmacology
University of Minnesota



Re: [NMusers] IIV on %CV-Scale - Standard Error (SE)

2008-02-15 Thread Leonid Gibiansky

Jakob
I am not sure that the formula that you present is correct:

sqrt(SE.OMEGAnn)/(2*sqrt(OMEGAnn))*100%

I think, you do not need to take sqrt(). This is what I would use

SE.OMEGAnn/(2*OMEGAnn)*100%

Note that your S-plus function also does not take a sqrt, so it could be 
just a  typo.



Factor of 2 is derived from these calculations:

Assume that you have random variable

X=A+alpha*eps, where eps is the standard normal (mean(eps)=0, var(eps)=1)

Then

mean(X)=A
var(X)=mean( (X-mean(X))**2 ) = alpha**2
sd(X)=sqrt(Var(X))=alpha
CV(X)=SD/mean=alpha/A

Now, let Y=X**2=(A+alpha*eps)**2
Then
mean(Y)=mean(X**2)=mean(A**2+2 alpha A eps + alpha**2 mean(eps**2))=
   = A**2 + alpha**2 = A**2  ; (neglecting small terms alpha**2)
var(Y)=mean( (Y-mean(Y))**2 ) = mean( ((A+alpha*eps)**2-A**2 )**2 ) =
  =mean( (2 alpha A eps)**2) = 4 alpha**2 A**2 (again, keeping only 
the main term)

SD(Y) = 2 A alpha
CV(Y)=2 alpha/A

From here we have

CV(X)=CV(Y)/2

In the context of what we discuss, X is the estimated SD while Y is the 
estimated variance of OMEGA (or sigma) estimate:




Parameterization 1:

PAR=PAR0+THETA(1)*ETA(1)
$OMEGA
1 FIXED

(X from the discussion above is THETA(1) estimate)
---
Parameterization 1:

PAR=PAR0+ETA(1)
$OMEGA
estimated

Y in this case is the OMEGA estimate, and if the solution does not 
depend on the parameterization, Y=X**2


-

Another way to derive it is to think in terms of confidence intervals. 
In SD scale,


SD.CI = SD +/- 2* SE.SD
CV.SD = 2* SE.SD / SD / 2 = SE.SD / SD
In OMEGA scale this would result in

OMEGA.CI = (SD +/- 2* SE.SD)**2=SD**2 +/- 4 * SD * SE.SD (neglecting the 
term 4 SE.SD**2)


Then CV.OMEGA = 4 * SD * SE.SD / 2/ SD**2 = 2 SE.SD/SD = 2 CV.SD

CV.SD = CV.OMEGA/2

Leonid

--
Leonid Gibiansky, Ph.D.
President, QuantPharm LLC
web:www.quantpharm.com
e-mail: LGibiansky at quantpharm.com
tel:(301) 767 5566




Ribbing, Jakob wrote:

Hi all,

I think that Paul stumbled on a rather important issue. The SE of the residual 
error may not be of primary interest, but the same as discussed under this 
thread also applies to the standard error of omega. (I changed the name of the 
subject since this thread now is about omega)

I prefer to report IIV on the %CV scale, i.e. sqrt(OMEGAnn) for a parameter 
with log-normal distribution. It then makes no sense to report the standard 
error on any other scale. For log-normally distributed parameters the relative 
SE of IIV then becomes:
sqrt(SE.OMEGAnn)/(2*sqrt(OMEGAnn))*100%

Notice the factor 2 in the denominator. I got this from Mats Karlsson who 
picked it up from France Mentré, but I have never seen the actual mathematical 
derivation for this formula. I think this is what Varun is doing in his e-mail 
a few hours ago. However, I am not sure; being illiterate I could not 
understand the derivation. Either way, if we are satisfied with the 
approximation of IIV as the square root of omega, the factor 2 in the 
approximation of the SE on the %CV-scale is exact enough.

If you would like to convince yourself of that the factor 2 is correct (up to 3 
significant digits), you can load the below Splus function and then run with 
different CV:s, e.g:
ratio(IIV=1)
ratio(IIV=0.5)

Regards

Jakob


ratio - function (IIV.stdev=1) {
ncol - 1000 #1000 Studies, in which IIV is estimated
ETAS - rnorm(n=1000*ncol, 0, IIV.stdev)
ETA  - matrix(data=ETAS, ncol=ncol)
IIVs.stds- colStdevs(ETA) #Estimate of IIV on sd-scale
IIVs.vars- colVars(ETA)   #Estimate of IIV on var-scale

SE.std  - stdev(IIVs.stds)/sqrt(ncol)
SE.var  - stdev(IIVs.vars)/sqrt(ncol)
CV.std  - SE.std/IIV.stdev
CV.var  - SE.var/(IIV.stdev^2)
print(paste(SE on Var scale:, SE.var))
print(paste(SE on Std scale:, SE.std))
print(paste(Ratio CV var, CV std:, CV.var/CV.std))
invisible()
}




From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of varun goel
Sent: 14 February 2008 23:07
To: [EMAIL PROTECTED]; NONMEM users forum
Subject: Re: [NMusers] Combined residual model and IWRES.

Dear Paul, 


You can use the delta method to compute the variance and expected value of a 
transformation, which is square in your case.

given y=theta^2


E(y)=theta^2
Var(y)=Var(theta)+(2*theta)^2 ; the later portion is square of the first derivative of  y with respect of theta. 


In your example theta is the standard deviation whereas error estimate is 
variance. I did not follow your values very well, so I ran a model with same 
reparameterization and got following results.

theta=2.65, rse=27.2%
err=7.04; rse=54.4%

theta.1-2.65
rse-27.2 
var.theta.1-(rse*theta.1/100)^2  ## = 0.51955 


err.1-7.04
rse.err.1-54.4#%
var.err.1-(rse.err.1*err.1/100)^2 ##  = 14.66

##now from delta method
 
E(err)=2.65^2 ## 7.025 close to 7.04