call
Calling Functions

Description

Creates or tests for an object of mode call or call(...).

Usage

call(...)
is.call(x)
as.call(x)

Arguments

x any object.
... In call, the name of a function, as a string, followed by the arguments to it. The arguments may be tagged, as in call("myFunction", argName = argValue).

Details

You can use call to have functions create other functions. The d.order example below is a non-trivial example of this use. d.order is a function that creates the density function of an order statistic from a sample from a specific distribution.
Value
callcreates a call to the function named in the first argument, using the remaining arguments as the arguments to the function call.
is.callchecks whether x is a function call.
as.calltries to coerce x to a function call.
See Also
do.call, as.name, eval
Examples
funs <- c("sin", "cos")
x <- 30*pi/180
i <- 1
my.call <- call(funs[i], as.name("x"))
# my.call ready to be evaluated or put into an expression
eval(my.call)
is.call(my.call)
call_1 <- as.call(list(sin, quote(x)))
eval(call_1) 

# d.order creates the density function of an order statistic. d.order <- function(n, r, distfun, densityfun) { f <- function(x) NULL con <- exp(lgamma(n + 1) - lgamma(r) - lgamma(n - r + 1)) c1 <- as.call(list(substitute(distfun), as.name("x"))) c2 <- call("^", call("-", 1, c1), n - r) c3 <- call("^", c1, r - 1) c4 <- call("*", con, call("*", c2, call("*", c3, as.call(list(substitute(densityfun), as.name("x")))))) body(f) <- c4 f } d.median.norm.9 <- d.order(9, 5, pnorm, dnorm) d.median.norm.9(-2:2)

Package base version 6.1.1-7
Package Index