m_ply: Call function with arguments in array or data frame, discarding results.
Description
Call a multi-argument function with values taken from columns of an
data frame or array, and discard results into a list.Usage
m_ply(.data, .fun = NULL, ..., .expand = TRUE, .progress = "none",
.inform = FALSE, .print = FALSE, .parallel = FALSE, .paropts = NULL)
Arguments
.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.
.inform
produce informative error messages? This is turned off
by default because it substantially slows processing speed, but is very
useful for debugging
.print
automatically print each result? (default: FALSE
)
.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 .e
Input
Call a multi-argument function with values taken from
columns of an data frame or arrayOutput
All output is discarded. This is useful for functions that you are
calling purely for their side effects like displaying plots or
saving output.Details
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
.References
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/.