lapply {base} | R Documentation |
lapply
returns a list of the same length as X
. Each
element of which is the result of applying FUN
to the
corresponding element of X
.
sapply
is a “user-friendly” version of lapply
by default returning a vector or matrix if appropriate.
replicate
is a wrapper for the common use of sapply
for
repeated evaluation of an expression (which will usually involve
random number generation).
lapply(X, FUN, ...) sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE) replicate(n, expr, simplify = TRUE)
X |
list or (atomic) vector to be used. |
FUN |
the function to be applied to each element of X .
In the case of functions like + , %*% , etc.,
the function name must be quoted. |
... |
optional arguments to FUN . |
simplify |
logical; should the result be simplified to a vector or matrix if possible? |
USE.NAMES |
logical; if TRUE and if X is character,
use X as names for the result unless it had names
already. |
n |
number of replications. |
expr |
expression to evaluate repeatedly. |
Function FUN
must be able to accept as input any of the
elements of X
. If the latter is an atomic vector, FUN
will always be passed a length-one vector.
Simplification in sapply
is only attempted if X
has
length greater than zero and if the return values from all elements
of X
are all of the same (positive) length. If the common
length is one the result is a vector, and if greater than one is a
matrix with a column corresponding to each element of X
.
The mode of the simplified answer is chosen to accommodate the modes of
all the values returned by the calls to FUN
: see unlist
.
if X
has length 0, the return value of sapply
is always
a 0-length list.
sapply(*, simplify = FALSE, USE.NAMES = FALSE)
is
equivalent to lapply(*)
.
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
x <- list(a = 1:10, beta = exp(-3:3), logic = c(TRUE,FALSE,FALSE,TRUE)) # compute the list mean for each list element lapply(x,mean) # median and quartiles for each list element lapply(x, quantile, probs = 1:3/4) sapply(x, quantile) i39 <- sapply(3:9, seq) # list of vectors sapply(i39, fivenum) hist(replicate(100, mean(rexp(10))))