# [R] Help with workaround for: Function '`[`' is not in thederivatives table

Berton Gunter gunter.berton at gene.com
Tue Aug 15 01:10:45 CEST 2006

```I think this is the sort of problem which is most elegantly handled by
computing on the language. Here is an INelegant solution:

>  A <- c(1, 2, 3)

> for(i in 1:3)assign(paste('A',i,sep=''),A[i])

>  E <- expression(A1 * exp(A2*X) + A3) ## could also use substitute() here,
I think
## instead of explicitly assigning the coefficients

> X <- c(0.5, 1.0, 2.0)

>  eval(E)
[1]  5.718282 10.389056 57.598150

>  D(E, "A2")
A1 * (exp(A2 * X) * X)

Bert Gunter
Genentech

> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch
> [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Earl F. Glynn
> Sent: Monday, August 14, 2006 3:44 PM
> To: r-help at stat.math.ethz.ch
> Subject: [R] Help with workaround for: Function '`[`' is not
> in thederivatives table
>
> # This works fine:
> > a <- 1
>
> > b <- 2
>
> > c <- 3
>
>
>
> > E <- expression(a * exp(b*X) + c)
>
>
>
> > X <- c(0.5, 1.0, 2.0)
>
>
>
> > eval(E)
>
> [1]  5.718282 10.389056 57.598150
>
>
>
> > D(E, "b")
>
> a * (exp(b * X) * X)
>
> > eval(D(E, "b"))
>
> [1]   1.359141   7.389056 109.196300
>
>
>
> # But if (a,b,c) are replaced with (A[1], A[2], A[3]), how
> can I get a
> derivative using "D"?
>
>
>
> > A <- c(1, 2, 3)
>
> > E <- expression(A[1] * exp(A[2]*X) + A[3])
>
> > X <- c(0.5, 1.0, 2.0)
>
> > eval(E)
>
> [1]  5.718282 10.389056 57.598150
>
>
>
> # Why doesn't this work?  Any workarounds?
>
> > D(E, "A[2]")
>
> Error in D(E, "A[2]") : Function '`[`' is not in the derivatives table
>
>
>
> If I want to have a long vector of coefficients, A, (perhaps
> dozens) how can
> I use "D" to compute partial derivatives?
>
>
>
> Thanks for any help with this.
>
>
>
> efg
>
>
>
> Earl F. Glynn
>
> Scientific Programmer
>
> Stowers Institute for Medical Research
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

```