Skip to content

Evaluation of an expression as function argument

4 messages · Baptiste Auguie, Uwe Ligges, Sebastien Bihorel

#
Dear R-users,

I would like to know if is it possible to set a function argument as an 
evaluated expression. I have tried several syntaxes, including the 
following example, but could not get it anything to run. The plot 
function is used here but I would like to later apply the same approach 
to other functions.

##########################
items <- c(expression(col=2),expression(pch=2))

for (in in seq(2)) {
  plot(1:10, eval(items[i]))
}
##########################

Thanks in advance for your input.

Sebastien
#
Try this,
?do.call


HTH,

baptiste
On 29 Apr 2009, at 19:30, Sebastien Bihorel wrote:

            
_____________________________

Baptiste Augui?

School of Physics
University of Exeter
Stocker Road,
Exeter, Devon,
EX4 4QL, UK

Phone: +44 1392 264187

http://newton.ex.ac.uk/research/emag
#
Sebastien Bihorel wrote:
Way 1:

for(i in seq(2))
   do.call("plot", c(list(1:10), as.list(items[i])))


Way 2 is perhaps easier for you:


items <- list(col=2, pch=2)
for (i in seq(2))
   do.call("plot", c(list(1:10), items[i]))


Ways 3...n up to others...


Uwe Ligges
#
Thanks Uwe and Baptiste

*Sebastien Bihorel, PharmD, PhD*
PKPD Scientist
Cognigen Corp
Email: sebastien.bihorel at cognigencorp.com 
<mailto:sebastien.bihorel at cognigencorp.com>
Phone: (716) 633-3463 ext. 323
Uwe Ligges wrote: