Learn R Programming

plyr (version 1.5.2)

splitter_a: Split an array by...

Description

Split an array by .margins. Split a 2d or higher data structure into lower-d pieces based

Usage

splitter_a(data, .margins=1, .expand=TRUE)

Arguments

data
>1d data structure (matrix, data.frame or array)
.margins
a vector giving the subscripts to split up data by.
.expand
if splitting a dataframe by row, should output be 1d (expand = FALSE), with an element for each row; or nd (expand = TRUE), with a dimension for each variable.

Value

  • a list of lower-d slices, with attributes that record split details

Details

This is the workhorse of the a*ply functions. Given a >1 d data structure (matrix, array, data.frame), it splits it into pieces based on the subscripts that you supply. Each piece is a lower dimensional slice.

The margins are specified in the same way as apply, but splitter_a just splits up the data, while apply also applies a function and combines the pieces back together. This function also includes enough information to recreate the split from attributes on the list of pieces.

Examples

Run this code
plyr:::splitter_a(mtcars, 1)
plyr:::splitter_a(mtcars, 2)

plyr:::splitter_a(ozone, 2)
plyr:::splitter_a(ozone, 3)
plyr:::splitter_a(ozone, 1:2)

Run the code above in your browser using DataLab