If you are modifying it it would also be nice to add { to the derivative table so one can write this:
f <- function(x) x*x deriv(body(f), "x", func = TRUE) Currently, one must do: deriv(body(f)[[2]], "x", func = TRUE) On 10/15/07, Prof Brian Ripley <[EMAIL PROTECTED]> wrote: > On Mon, 15 Oct 2007, Thomas Yee wrote: > > > Hello, > > > > I was wondering if the functions deriv3(), deriv() etc. could be extended > > to handle psigamma() and its special cases (digamma(), trigamma() > > etc.). From the error message it seems that 'psigamma' needs to be > > added to the derivatives table. > > This might be easy since psigamma() has a deriv argument. > > If you look at ?deriv you will see that it only knows about functions *of > one argument* and operators. So it would be easy to add digamma(x) and > psigamma(x) (and I will do so shortly), it would not be so easy to add > psigamma(x, deriv). > > > Additionally, this error message is also obtained when requesting for > > the Hessian of the gamma and lgamma functions: > > > > d3 = deriv(~ gamma(y), namev="y", hessian= TRUE) > > d3 = deriv(~ lgamma(y), namev="y", hessian= TRUE) > > > > Another class of special functions worth adding are the Bessel functions. > > Well, you can always submit a patch .... > > Note that deriv() in R differs from that in S in being done in C and hence > not being user-extensible. A long time ago that had an advantage: S's > deriv could be very slow and take a lot of memory by the standards of the > early 1990's. Rather than work on adding yet more special cases it would > seem better to work on making it user-extensible. > > -- > 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 > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel