alply {plyr} | R Documentation |
Split array, apply function, and return results in a list.
Description
For each slice of an array, apply function then combine results into a list.
Usage
alply(
.data,
.margins,
.fun = NULL,
...,
.expand = TRUE,
.progress = "none",
.inform = FALSE,
.parallel = FALSE,
.paropts = NULL,
.dims = FALSE
)
Arguments
.data |
matrix, array or data frame to be processed |
.margins |
a vector giving the subscripts to split up |
.fun |
function to apply to each piece |
... |
other arguments passed on to |
.expand |
if |
.progress |
name of the progress bar to use, see
|
.inform |
produce informative error messages? This is turned off by default because it substantially slows processing speed, but is very useful for debugging |
.parallel |
if |
.paropts |
a list of additional options passed into
the |
.dims |
if |
Details
The list will have "dims" and "dimnames" corresponding to the
margins given. For instance alply(x, c(3,2), ...)
where
x
has dims c(4,3,2)
will give a result with dims
c(2,3)
.
alply
is somewhat similar to apply
for cases
where the results are not atomic.
Value
list of results
Input
This function splits matrices, arrays and data frames by dimensions
Output
If there are no results, then this function will return
a list of length 0 (list()
).
References
Hadley Wickham (2011). The Split-Apply-Combine Strategy for Data Analysis. Journal of Statistical Software, 40(1), 1-29. https://www.jstatsoft.org/v40/i01/.
See Also
Other array input:
a_ply()
,
aaply()
,
adply()
Other list output:
dlply()
,
llply()
,
mlply()
Examples
alply(ozone, 3, quantile)
alply(ozone, 3, function(x) table(round(x)))