Re: [Rd] extending the derivs table/fools rushing in

From: Gabor Grothendieck <ggrothendieck_at_gmail.com>
Date: Thu, 14 Aug 2008 12:59:50 -0400

While you are at it could you add { to the table so that this works:

> # this is ok
> f <- function(x) x*x
> D(body(f), "x")
x + x

> # but not g which is same as f
> # except it has { ... } surrounding its body
> g <- function(x) { x*x }
> D(body(g), "x")


Error in D(body(g), "x") : Function '`{`' is not in the derivatives table

2008/8/14 Ben Bolker <bolker_at_zoology.ufl.edu>:
>
> I added "plogis" to the derivative table in the
> development version of R; the patch against yesterday's
> R-devel src/deriv/main.c is available at
> http://www.zoology.ufl.edu/bolker/deriv_patch.txt .
>
> I pretty much followed the framework of the other symbols;
> here was my incantation
>
> - } else if (CAR(expr) == PlogisSymbol) {
> - ans = simplify(TimesSymbol,
> - PP_S(TimesSymbol,
> - PP_S2(ExpSymbol,
> - PP_S2(MinusSymbol,CADR(expr))),
> - PP_S(PowerSymbol,
> - PP_S(PlusSymbol,
> - Constant(1.),
> - PP_S2(ExpSymbol,
> - PP_S2(MinusSymbol,CADR(expr)))),
> - Constant(-2.))),
> - PP(D(CADR(expr),var)));
> - UNPROTECT(8);
>
> It seems to work:
>
>> D(quote(plogis(a)),"a")
> exp(-a) * (1 + exp(-a))^-2
>> D(quote(plogis(a+b*x)),"x")
> exp(-(a + b * x)) * (1 + exp(-(a + b * x)))^-2 * b
>
> Any thoughts? I'm sure there's a cleverer way to do this ...
>
> Ben Bolker
>
> PS I get a minor build error at the end of the compilation
> (on Ubuntu 8.10):
>
> make[2]: *** No rule to make target `VR.ts', needed by
> `stamp-recommended'. Stop.
> make[2]: Leaving directory
> `/usr/local/src/R/R-devel/src/library/Recommended'
> make[1]: *** [recommended-packages] Error 2
> make[1]: Leaving directory
> `/usr/local/src/R/R-devel/src/library/Recommended'
> make: *** [stamp-recommended] Error 2
>
> ... don't know if that is important or not.
>
>
>
> ______________________________________________
> R-devel_at_r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
>



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Thu 14 Aug 2008 - 17:03:19 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 14 Aug 2008 - 17:36:42 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.

list of date sections of archive