# xarray.core.groupby.DatasetGroupBy.reduce

#### DatasetGroupBy.reduce(func, dim=None, , axis=None, keep_attrs=None, shortcut=True, \*\*kwargs)[[source]](https://github.com/pydata/xarray/blob/main/xarray/core/groupby.py#L1955-L2031)

Reduce the items in this group by applying func along some
dimension(s).

* **Parameters:**
  * **func** ([`callable()`](https://docs.python.org/3/builtins/functions.html#callable)) – Function which can be called in the form
    func(x, axis=axis, \*\*kwargs) to return the result of collapsing
    an np.ndarray over an integer valued axis.
  * **dim** ([`...`](https://docs.python.org/3/builtins/constants.html#Ellipsis), [`str`](https://docs.python.org/3/builtins/stdtypes.html#str), `Iterable` of `Hashable` or [`None`](https://docs.python.org/3/builtins/constants.html#None), *optional*) – Dimension(s) over which to apply func. By default apply over the
    groupby dimension, with “…” apply over all dimensions.
  * **axis** ([`int`](https://docs.python.org/3/builtins/functions.html#int) or [sequence](https://docs.python.org/3/glossary.html#term-sequence) of [`int`](https://docs.python.org/3/builtins/functions.html#int), *optional*) – Axis(es) over which to apply func. Only one of the ‘dimension’
    and ‘axis’ arguments can be supplied. If neither are supplied, then
    func is calculated over all dimension for each group item.
  * **keep_attrs** ([`bool`](https://docs.python.org/3/builtins/functions.html#bool), *optional*) – If True, the datasets’s attributes (attrs) will be copied from
    the original object to the new one.  If False (default), the new
    object will be returned without attributes.
  * **\*\*kwargs** ([`dict`](https://docs.python.org/3/builtins/stdtypes.html#dict)) – Additional keyword arguments passed on to func.
* **Returns:**
  **reduced** ([`Dataset`](xarray.Dataset.html.md#xarray.Dataset)) – Array with summarized data and the indicated dimension(s)
  removed.
