mars.tensor.ediff1d#

mars.tensor.ediff1d(a, to_end=None, to_begin=None)[来源]#

张量中连续元素之间的差异。

Parameters
  • a (array_like) – 如果有必要,将在计算差异之前被扁平化。

  • to_end (array_like, 可选) – 要附加到返回差异末尾的数字。

  • to_begin (array_like, optional) – 在返回的差异开头添加的数字。

Returns

ediff1d – 差异。大致上,这是 a.flat[1:] - a.flat[:-1]

Return type

张量

另请参阅

diff, gradient

示例

>>> import mars.tensor as mt
>>> x = mt.array([1, 2, 4, 7, 0])
>>> mt.ediff1d(x).execute()
array([ 1,  2,  3, -7])
>>> mt.ediff1d(x, to_begin=-99, to_end=mt.array([88, 99])).execute()
array([-99,   1,   2,   3,  -7,  88,  99])

返回的张量总是1维的。

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