The derivative of plogis is surely dlogis. (And yes, there is a good
reason why we have such a function: take a look at its C code.)
That means we would need an entry for dlogis too, I guess. I am not
convinced that there is a real need for these (and where does this stop?)
What would be much more useful is to make this user-extensible (as Bill
Venables pointed out a decade ago). [pd]norm were added in 2002 to
support MASS, the ability to do all of MASS in R being a goal at the time.
On Thu, 14 Aug 2008, Ben Bolker wrote:
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.
A local-to-you problem.
--
Brian D. Ripley, [EMAIL PROTECTED]
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel