# xarray.DataArray.diff

`DataArray.``diff`(dim: Hashable, n: int = 1, label: Hashable = 'upper') → xarray.core.dataarray.DataArray

  Calculate the n-th order discrete difference along given axis.

  Parameters:

  - dim (hashable, optional) – Dimension over which to calculate the finite difference.
  - n (int, optional) – The number of times values are differenced.
  - label (hashable, optional) – The new coordinate in dimension `dim` will have the values of either the minuend’s or subtrahend’s coordinate for values ‘upper’ and ‘lower’, respectively. Other values are not supported.

  Returns: | difference – The n-th order finite difference of this object.
  Return type: | same type as caller

  Examples

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

  See also

  `DataArray.differentiate()`