Rev 68948 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
% File src/library/base/man/mapply.Rd% Part of the R package, https://www.R-project.org% Copyright 1995-2013 R Core Team% Copyright 2002-2010 The R Foundation% Distributed under GPL 2 or later\name{mapply}\alias{mapply}\title{Apply a Function to Multiple List or Vector Arguments}\description{\code{mapply} is a multivariate version of \code{\link{sapply}}.\code{mapply} applies \code{FUN} to the first elements of each \dotsargument, the second elements, the third elements, and so on.Arguments are recycled if necessary.}\usage{mapply(FUN, \dots, MoreArgs = NULL, SIMPLIFY = TRUE,USE.NAMES = TRUE)}\arguments{\item{FUN}{function to apply, found via \code{\link{match.fun}}.}\item{\dots}{arguments to vectorize over (vectors or lists of strictlypositive length, or all of zero length). See also \sQuote{Details}.}\item{MoreArgs}{a list of other arguments to \code{FUN}.}\item{SIMPLIFY}{logical or character string; attempt to reduce theresult to a vector, matrix or higher dimensional array; seethe \code{simplify} argument of \code{\link{sapply}}.}\item{USE.NAMES}{logical; use names if the first \dots argument hasnames, or if it is a character vector, use that character vector asthe names.}}\details{\code{mapply} calls \code{FUN} for the values of \code{\dots}(re-cycled to the length of the longest, unless any have length zero),followed by the arguments given in \code{MoreArgs}. The arguments inthe call will be named if \code{\dots} or \code{MoreArgs} are named.Arguments with classes in \code{\dots} will be accepted, and theirsubsetting and \code{length} methods will be used.}\value{A list, or for \code{SIMPLIFY = TRUE}, a vector, array or list.}\seealso{\code{\link{sapply}}, after which \code{mapply()} is modelled.\code{\link{outer}}, which applies a vectorized function to allcombinations of two arguments.}\examples{mapply(rep, 1:4, 4:1)mapply(rep, times = 1:4, x = 4:1)mapply(rep, times = 1:4, MoreArgs = list(x = 42))mapply(function(x, y) seq_len(x) + y,c(a = 1, b = 2, c = 3), # names from firstc(A = 10, B = 0, C = -10))word <- function(C, k) paste(rep.int(C, k), collapse = "")utils::str(mapply(word, LETTERS[1:6], 6:1, SIMPLIFY = FALSE))}\keyword{manip}\keyword{utilities}