xarray.DataArray.shift

DataArray.shift(self, shifts: Mapping[Hashable, int] = None, fill_value: Any = <NA>, **shifts_kwargs: int) → 'DataArray'

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.

Parameters
  • shifts (Mapping with the form of {dim: offset}) – 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_kwarg must be provided.

Returns

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

Return type

DataArray

See also

roll()

Examples

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