Call a multi-argument function with values taken from columns of an data frame or array, and combine results into an array

```
maply(.data, .fun = NULL, ..., .expand = TRUE, .progress = "none",
.inform = FALSE, .drop = TRUE, .parallel = FALSE, .paropts = NULL)
```

.data

matrix or data frame to use as source of arguments

.fun

function to apply to each piece

...

other arguments passed on to `.fun`

.expand

should output be 1d (expand = FALSE), with an element for each row; or nd (expand = TRUE), with a dimension for each variable.

.progress

name of the progress bar to use, see
`create_progress_bar`

.inform

produce informative error messages? This is turned off by default because it substantially slows processing speed, but is very useful for debugging

.drop

should extra dimensions of length 1 in the output be
dropped, simplifying the output. Defaults to `TRUE`

.parallel

if `TRUE`

, apply function in parallel, using parallel
backend provided by foreach

.paropts

a list of additional options passed into
the `foreach`

function when parallel computation
is enabled. This is important if (for example) your code relies on
external data or packages: use the `.export`

and `.packages`

arguments to supply them so that all cluster nodes have the correct
environment set up for computing.

if results are atomic with same type and dimensionality, a vector, matrix or array; otherwise, a list-array (a list with dimensions)

Call a multi-argument function with values taken from columns of an data frame or array

If there are no results, then this function will return a vector of
length 0 (`vector()`

).

The `m*ply`

functions are the `plyr`

version of `mapply`

,
specialised according to the type of output they produce. These functions
are just a convenient wrapper around `a*ply`

with `margins = 1`

and `.fun`

wrapped in `splat`

.

Hadley Wickham (2011). The Split-Apply-Combine Strategy for Data Analysis. Journal of Statistical Software, 40(1), 1-29. http://www.jstatsoft.org/v40/i01/.

```
# NOT RUN {
maply(cbind(mean = 1:5, sd = 1:5), rnorm, n = 5)
maply(expand.grid(mean = 1:5, sd = 1:5), rnorm, n = 5)
maply(cbind(1:5, 1:5), rnorm, n = 5)
# }
```

Run the code above in your browser using DataLab