do.call {base}R Documentation

Execute a Function Call

Description

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.

Usage

do.call(what, args, quote=FALSE)

Arguments

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.

Value

The result of the (evaluated) function call.

References

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

See Also

call which creates an unevaluated call.

Examples

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)

[Package base version 2.1.0 Index]