[Rd] Changing function arguments

McGehee, Robert Robert.McGehee at geodecapital.com
Mon Oct 23 05:16:36 CEST 2006


R-Developers,
I'm looking for some help computing on the R language.

I'm hoping to write a function that parses a language or expression
object and returns another expression with all instances of certain
argument of a given function altered. For instance, say I would like my
function, myFun to take an expression and whenever the argument 'x'
appears within the function FUN inside that expression, return an
altered expression in which 'x' is incremented by one.

Thus,
> x <- expression(FUN(x = 0) + log(FUN(x = 3)))
> myFun(x)
[1] expression(FUN(x = 1) + log(FUN(x = 4)))

Conceptually, it looks like I want to recursively break a language
object into its component functions, search for FUN and increment one of
its arguments ('x'), then reassemble and return the resulting
expression. However, I haven't been able to come up with a clean way to
do this. Suggestions would be greatly appreciated.

Thanks in advance,
Robert

Robert McGehee
Quantitative Analyst
Geode Capital Management, LLC
53 State Street, 5th Floor | Boston, MA | 02109
Tel: 617/392-8396    Fax:617/476-6389
mailto:robert.mcgehee at geodecapital.com



This e-mail, and any attachments hereto, are intended for us...{{dropped}}




More information about the R-devel mailing list