#### Previous topic

numpy.diff

#### Next topic

numpy.gradient

# numpy.ediff1d

`numpy.``ediff1d`(ary, to_end=None, to_begin=None)

  The differences between consecutive elements of an array.

  Parameters : | ary : array_like If necessary, will be flattened before the differences are taken. to_end : array_like, optional Number(s) to append at the end of the returned differences. to_begin : array_like, optional Number(s) to prepend at the beginning of the returned differences.
  Returns : | ediff1d : ndarray The differences. Loosely, this is `ary.flat[1:] - ary.flat[:-1]`.

  See also

  `diff`, `gradient`

  Notes

  When applied to masked arrays, this function drops the mask information if the to_begin and/or to_end parameters are used.

  Examples

      >>> x = np.array([1, 2, 4, 7, 0])
      >>> np.ediff1d(x)
      array([ 1,  2,  3, -7])

      >>> np.ediff1d(x, to_begin=-99, to_end=np.array([88, 99]))
      array([-99,   1,   2,   3,  -7,  88,  99])

  The returned array is always 1D.

      >>> y = [[1, 2, 4], [1, 6, 24]]
      >>> np.ediff1d(y)
      array([ 1,  2, -3,  5, 18])