DataArray.shift(shifts=None, fill_value=<NA>, **shifts_kwargs)

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

Only the data is moved; coordinates stay in place. Values shifted from beyond array bounds are replaced by NaN. This is consistent with the behavior of shift in pandas.

  • shifts (mapping of hashable to int, optional) – Integer offset to shift along each of the given dimensions. Positive offsets shift to the right; negative offsets shift to the left.

  • fill_value (scalar, optional) – Value to use for newly missing values

  • **shifts_kwargs – The keyword arguments form of shifts. One of shifts or shifts_kwargs must be provided.


shifted – DataArray with the same coordinates and attributes but shifted data.

Return type


See also



>>> arr = xr.DataArray([5, 6, 7], dims="x")
>>> arr.shift(x=1)
<xarray.DataArray (x: 3)>
array([nan,  5.,  6.])
Dimensions without coordinates: x