[R] numerical derivative R help

Ravi Varadhan rvaradhan at jhmi.edu
Wed Jul 7 01:46:10 CEST 2010


Please do not do multiple postings.

You do not need numerical derivative, but a refresher course in calculus.

fitterma.deriv <- function(xtime) {

a <- -0.09144115

b <- -0.01335756

c <- -2.368057

d <- -0.00600052

deriv <- b * exp(a + b*xtime) + d * exp(c + d * xtime)
return(deriv)

}

require(numDeriv)

xtime <- seq(0, 1, length=100)

deriv.exact <- fitterma.deriv(xtime)

deriv.num <- grad(x=xtime, func=fitterma)

> all.equal(deriv.exact, deriv.num)
[1] TRUE
>

Hope this is helpful,
Ravi.

____________________________________________________________________

Ravi Varadhan, Ph.D.
Assistant Professor,
Division of Geriatric Medicine and Gerontology
School of Medicine
Johns Hopkins University

Ph. (410) 502-2619
email: rvaradhan at jhmi.edu


----- Original Message -----
From: Parminder Mankoo <pkmankoo09 at gmail.com>
Date: Tuesday, July 6, 2010 7:03 pm
Subject: [R] numerical derivative R help
To: r-help at r-project.org


> I fit my CDF to sum of exponentials and now I want to take the numerical
>  derivative of this function to obtain probability density.I will really
>  appreciate your help reagrding the error messages I am getting which 
> I don't
>  understand.
>  
>  *
>  *
>  
>  > fitterma <- function(xtime) {
>  
>  a <- -0.09144115
>  
>  b <- -0.01335756
>  
>  c <- -2.368057
>  
>  d <- -0.00600052
>  
>  return(exp(a+b*xtime)+exp(c+d*xtime))
>  
>  }
>  
>  
>  > numericDeriv(fitterma,"xtime")
>  
>  
>  *Error in numericDeriv(fitterma, "xtime") : *
>  
>  *  cannot coerce type 'closure' to vector of type 'double'*
>  
>  *
>  *
>  
>  *Thanks,*
>  
>  *parmee*
>  
>  	[[alternative HTML version deleted]]
>  
>  ______________________________________________
>  R-help at r-project.org mailing list
>  
>  PLEASE do read the posting guide 
>  and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list