numpy.ediff1d#
- numpy.ediff1d(ary, to_end=None, to_begin=None)[源代码]#
数组连续元素之间的差值。
- 参数:
- ary类数组
如有必要,在计算差值之前会将其展平。
- to_end类数组,可选
要附加到返回差值末尾的一个或多个数字。
- to_begin类数组,可选
要添加到返回差值开头的一个或多个数字。
- 返回:
- ediff1dndarray
差值。粗略地说,这等同于
ary.flat[1:] - ary.flat[:-1]
。
注意
当应用于掩码数组时,如果使用了 to_begin 和/或 to_end 参数,此函数会丢弃掩码信息。
示例
>>> import numpy as np >>> 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])
返回的数组始终是 1D 的。
>>> y = [[1, 2, 4], [1, 6, 24]] >>> np.ediff1d(y) array([ 1, 2, -3, 5, 18])