# xarray.computation.rolling.DataArrayCoarsen

### *class* xarray.computation.rolling.DataArrayCoarsen(obj, windows, boundary, side, coord_func)[[source]](https://github.com/pydata/xarray/blob/main/xarray/computation/rolling.py#L1366-L1449)

#### \_\_init_\_(obj, windows, boundary, side, coord_func)[[source]](https://github.com/pydata/xarray/blob/main/xarray/computation/rolling.py#L1150-L1199)

Moving window object.

* **Parameters:**
  * **obj** ([`Dataset`](xarray.Dataset.html.md#xarray.Dataset) or [`DataArray`](xarray.DataArray.html.md#xarray.DataArray)) – Object to window.
  * **windows** ([mapping](https://docs.python.org/3/glossary.html#term-mapping) of [hashable](../user-guide/terminology.html.md#term-name) to [`int`](https://docs.python.org/3/builtins/functions.html#int)) – A mapping from the name of the dimension to create the rolling
    window along (e.g. time) to the size of the moving window.
  * **boundary** (`{"exact", "trim", "pad"}`) – If ‘exact’, a ValueError will be raised if dimension size is not a
    multiple of window size. If ‘trim’, the excess indexes are trimmed.
    If ‘pad’, NA will be padded.
  * **side** (`'left'` or `'right'` or `mapping from dimension` to `'left'` or `'right'`)
  * **coord_func** (`function (name)` or `mapping from coordinate name` to `function (name).`)
* **Returns:**
  `coarsen`

### Methods

| [`__init__`](#xarray.computation.rolling.DataArrayCoarsen.__init__)(obj, windows, boundary, side, ...)                                               | Moving window object.                                                                                                             |
|--------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
| [`all`](xarray.computation.rolling.DataArrayCoarsen.all.html.md#xarray.computation.rolling.DataArrayCoarsen.all)([keep_attrs])                         | Reduce this object's data by applying array_all along some dimension(s).                                                          |
| [`any`](xarray.computation.rolling.DataArrayCoarsen.any.html.md#xarray.computation.rolling.DataArrayCoarsen.any)([keep_attrs])                         | Reduce this object's data by applying array_any along some dimension(s).                                                          |
| [`construct`](xarray.computation.rolling.DataArrayCoarsen.construct.html.md#xarray.computation.rolling.DataArrayCoarsen.construct)([window_dim, keep_attrs]) | Convert this Coarsen object to a DataArray or Dataset, where the coarsening dimension is split or reshaped to two new dimensions. |
| [`count`](xarray.computation.rolling.DataArrayCoarsen.count.html.md#xarray.computation.rolling.DataArrayCoarsen.count)([keep_attrs])                     | Reduce this object's data by applying count along some dimension(s).                                                              |
| [`max`](xarray.computation.rolling.DataArrayCoarsen.max.html.md#xarray.computation.rolling.DataArrayCoarsen.max)([keep_attrs])                         | Reduce this object's data by applying max along some dimension(s).                                                                |
| [`mean`](xarray.computation.rolling.DataArrayCoarsen.mean.html.md#xarray.computation.rolling.DataArrayCoarsen.mean)([keep_attrs])                       | Reduce this object's data by applying mean along some dimension(s).                                                               |
| [`median`](xarray.computation.rolling.DataArrayCoarsen.median.html.md#xarray.computation.rolling.DataArrayCoarsen.median)([keep_attrs])                   | Reduce this object's data by applying median along some dimension(s).                                                             |
| [`min`](xarray.computation.rolling.DataArrayCoarsen.min.html.md#xarray.computation.rolling.DataArrayCoarsen.min)([keep_attrs])                         | Reduce this object's data by applying min along some dimension(s).                                                                |
| [`prod`](xarray.computation.rolling.DataArrayCoarsen.prod.html.md#xarray.computation.rolling.DataArrayCoarsen.prod)([keep_attrs])                       | Reduce this object's data by applying prod along some dimension(s).                                                               |
| [`reduce`](xarray.computation.rolling.DataArrayCoarsen.reduce.html.md#xarray.computation.rolling.DataArrayCoarsen.reduce)(func[, keep_attrs])             | Reduce the items in this group by applying func along some dimension(s).                                                          |
| [`std`](xarray.computation.rolling.DataArrayCoarsen.std.html.md#xarray.computation.rolling.DataArrayCoarsen.std)([keep_attrs])                         | Reduce this object's data by applying std along some dimension(s).                                                                |
| [`sum`](xarray.computation.rolling.DataArrayCoarsen.sum.html.md#xarray.computation.rolling.DataArrayCoarsen.sum)([keep_attrs])                         | Reduce this object's data by applying sum along some dimension(s).                                                                |
| [`var`](xarray.computation.rolling.DataArrayCoarsen.var.html.md#xarray.computation.rolling.DataArrayCoarsen.var)([keep_attrs])                         | Reduce this object's data by applying var along some dimension(s).                                                                |

### Attributes

| [`boundary`](xarray.computation.rolling.DataArrayCoarsen.boundary.html.md#xarray.computation.rolling.DataArrayCoarsen.boundary)       |    |
|----------------------------------------------------------------------------------------------------------------------|----|
| [`coord_func`](xarray.computation.rolling.DataArrayCoarsen.coord_func.html.md#xarray.computation.rolling.DataArrayCoarsen.coord_func)   |    |
| [`obj`](xarray.computation.rolling.DataArrayCoarsen.obj.html.md#xarray.computation.rolling.DataArrayCoarsen.obj)                 |    |
| [`side`](xarray.computation.rolling.DataArrayCoarsen.side.html.md#xarray.computation.rolling.DataArrayCoarsen.side)               |    |
| [`trim_excess`](xarray.computation.rolling.DataArrayCoarsen.trim_excess.html.md#xarray.computation.rolling.DataArrayCoarsen.trim_excess) |    |
| [`windows`](xarray.computation.rolling.DataArrayCoarsen.windows.html.md#xarray.computation.rolling.DataArrayCoarsen.windows)         |    |
