splitapply
Split data into groups and apply function
Syntax
Description
To split data into groups and apply a function to the groups, use the
findgroups
and splitapply
functions
together. For more information about calculations on groups of data, see Calculations on Groups of Data.
Y = splitapply(
splits func
,X
,G
)X
into groups specified by G
and
applies the function func
to each group. Then
splitapply
returns Y
as an array that
contains the concatenated outputs from func
for the groups split
out of X
. The input argument G
is a vector of
positive integers that specifies the groups to which corresponding elements of
X
belong.
The output Y
and the group numbers G
have
the same ordering.
If any elements of G
are NaN
s, then
splitapply
omits the corresponding values in
X
when it splits X
into groups.
To create G
, first use the findgroups
function. Then use
splitapply
.
Y = splitapply(
splits variables of table func
,T
,G
)T
into groups, applies
func
, and returns Y
as an array. The
splitapply
function treats the variables of
T
as vectors, matrices, or cell arrays, depending on the data
types and sizes of the table variables. If T
has
N
variables, then func
must accept
N
input arguments.
[Y1,...,YM] = splitapply(___)
splits variables
into groups and applies func
to each group.
func
returns multiple output arguments.
Y1,...,YM
contains the concatenated outputs from
func
for the groups split out of the input data variables.
func
can return output arguments that belong to different
classes, but the class of each output must be the same each time
func
is called. You can use this syntax with any of the input
arguments of the previous syntaxes.
The number of output arguments from func
need not be the same
as the number of input arguments specified by X1,...,XN
.
Examples
Input Arguments
More About
Extended Capabilities
Version History
Introduced in R2015b