[EMAIL PROTECTED] writes:

> I'm having trouble figuring out how to create a function using "body<-"
> ().  The help file for body() says that the argument should be a list of
> R expressions.  However if I try that I get an error:
> 
> > tmpfun <- function(a, b=2){}
> > body(tmpfun) <- list(expression(z <- a + b),expression(z^2))
> Error in as.function.default(c(formals(f), value), envir) :
>         invalid formal argument list for "function"
> 
> Can someone give me a simple example for doing this?  Thanks!

Like this:

> tmpfun <- function(a, b=2){}
> body(tmpfun) <- quote({z <- a + b; z^2})
> tmpfun(3)
[1] 25

And yes, that help page could do with a rewrite...

-- 
   O__  ---- Peter Dalgaard             Blegdamsvej 3  
  c/ /'_ --- Dept. of Biostatistics     2200 Cph. N   
 (*) \(*) -- University of Copenhagen   Denmark      Ph: (+45) 35327918
~~~~~~~~~~ - ([EMAIL PROTECTED])             FAX: (+45) 35327907

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help

Reply via email to