[R] Passing expression as argument to do.call
Duncan Murdoch
murdoch at stats.uwo.ca
Thu Jul 2 22:51:42 CEST 2009
On 7/2/2009 4:34 PM, Sebastien Bihorel wrote:
> Dear R-users,
>
> I would like to know how expressions could be passed as arguments to
> do.call functions. As illustrated in the short example below,
> concatenating lists objects and an expression creates an expression
> object, which is not an acceptable argument for do.call. Is there a way
> to avoid that?
Put the expression in a list. See below...
>
> Thanks you
>
> Sebastien
>
>
> foo <- list(x=1:10, y=1:10)
> mylist <- list(pch=6, col=2)
> title <- "1 microgram"
> title2 <- expression ("1 " mu "g")
Needs *'s or paste, i.e.
title2 <- expression ("1 " * mu * "g")
>
> do.call(plot, c(foo, mylist, main=title))
do.call(plot, c(foo, mylist, list(main=title)))
Duncan Murdoch
>
> class(c(foo, mylist, main=title2))
>
> do.call(plot, c(foo, mylist, main=title2))
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list