xarray.DataArray.roll

DataArray.roll(**shifts)

Roll this array by an offset along one or more dimensions.

Unlike shift, roll rotates all variables, including coordinates. The direction of rotation is consistent with numpy.roll().

Parameters:

**shifts : keyword arguments of the form {dim: offset}

Integer offset to rotate each of the given dimensions. Positive offsets roll to the right; negative offsets roll to the left.

Returns:

rolled : DataArray

DataArray with the same attributes but rolled data and coordinates.

See also

shift

Examples

>>> arr = xr.DataArray([5, 6, 7], dims='x')
>>> arr.roll(x=1)
<xarray.DataArray (x: 3)>
array([7, 5, 6])
Coordinates:
  * x        (x) int64 2 0 1