# xarray.core.groupby.DatasetGroupBy.apply¶

DatasetGroupBy.apply(func, args=(), **kwargs)

Apply a function over each Dataset in the group and concatenate them together into a new Dataset.

func is called like func(ds, *args, **kwargs) for each dataset ds in this group.

Apply uses heuristics (like pandas.GroupBy.apply) to figure out how to stack together the datasets. The rule is: 1. If the dimension along which the group coordinate is defined is

still in the first grouped item after applying func, then stack over this dimension.

1. Otherwise, stack over the new dimension given by name of this grouping (the argument to the groupby function).

Parameters
funcfunction

Callable to apply to each sub-dataset.

argstuple, optional

Positional arguments to pass to func.

**kwargs

Used to call func(ds, **kwargs) for each sub-dataset ar.

Returns
appliedDataset or DataArray

The result of splitting, applying and combining this dataset.