numpy.ediff1d #

麻木的。ediff1d ( ary , to_end = None , to_begin = None ) [来源] #

数组的连续元素之间的差异。

参数
类似二元数组

如有必要,将在采取差异之前进行压平。

to_end array_like,可选

要附加在返回的差异末尾的数字。

to_begin array_like,可选

要在返回的差异开头添加的数字。

返回
ediff1d ndarray

差异。宽松地说,这是.ary.flat[1:] - ary.flat[:-1]

也可以看看

diff,gradient

笔记

当应用于掩码数组时,如果使用了to_begin和/或to_end参数,则此函数将删除掩码信息。

例子

>>> 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, ...,  -7,  88,  99])

返回的数组始终是一维的。

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