[R] Expressions and Functions

Liaw, Andy andy_liaw at merck.com
Fri Nov 14 15:46:20 CET 2003


You should be able to use deriv(..., func=TRUE) to get a function returned,
instead of an expression.

If you need to use D, here's a rather clumsy way that seems to work:

> dx2x <- D(expression(x^2), name="x"); dx2x
2 * x
> eval(parse(text=paste("f <- function(x){",
                        paste(deparse(dx2x), collapse=";"), "}")))
> f
function(x){ 2 * x }

HTH,
Andy

> From: Erin Hodgess [mailto:hodgess at gator.uhd.edu] 
> 
> Dear R People:
> 
> When the D function is used for a symbolic derivative,
> an expression is returned, which is fine.
> 
> How do you change that expression to a function, please?
> 
> I've been experimenting with substitute and deparse, but no 
> success yet.
> 
> This is R 1.8.0 for Windows.
> 
> thanks in advance for the help!
> 
> Sincerely,
> Erin Hodgess
> mailto: hodgess at gator.uhd.edu




More information about the R-help mailing list