do.call {base} | R Documentation |
do.call
constructs and executes a function call from the name
of the function and a list of arguments to be passed to it.
If quote
is FALSE
, the default, then the arguments are
evaluated. If quote
is TRUE
then each argument is quoted
(see quote
) so that the effect of argument evaluation
is to remove the quote - leaving the original argument unevaluated.
The behavior of some functions, such as substitute
,
will not be the same for functions evaluated using do.call
as
if they were evaluated from the interpretor. The precise semantics
are currently undefined and subject to change.
do.call(what, args, quote=FALSE)
what |
either a function or a character string naming the function to be called. |
args |
a list of arguments to the function call. The
names attribute of args gives the argument names. |
quote |
a logical value indicating whether to quote the arguments. |
The result of the (evaluated) function call.
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
call
which creates an unevaluated call.
do.call("complex", list(imag = 1:3)) ## if we already have a list (e.g. a data frame) ## we need c() to add further arguments tmp <- expand.grid(letters[1:2], 1:3, c("+", "-")) do.call("paste", c(tmp, sep="")) do.call(paste, list(as.name("A"), as.name("B")), quote=TRUE)