上一主题

numpy.diff

下一主题

numpy.gradient

numpy.ediff1d

numpy.ediff1d(ary, to_end=None, to_begin=None)[source]

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

参数:

ary:array_like

如果有必要,在采取差异之前将变平。

to_end:array_like,可选

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

to_begin:array_like,可选

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

返回:

ediff1d:ndarray

差异。松动,这是ary.flat [1:] - ary.flat [: - 1]

也可以看看

diffgradient

笔记

当应用于屏蔽数组时,如果使用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,   3,  -7,  88,  99])

返回的数组始终为1D。

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