# 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