我想获取一维 numpy 数组中不相邻值的差异。
该数组是沿时间线从 1 到 的一系列值N
。
对于N=12
,数组可能看起来像
timeline = np.array([ 0, np.nan, np.nan, 4, np.nan, 6, np.nan, np.nan, 9, np.nan, 11, 12])
或喜欢
timeline = np.array([ 0, 0, 0, 4, 0, 6, 0, 0, 9, 0, 11, 12])
所需的结果应如下所示:(数组的大小是完整的,位置很重要)
diff = np.array([ 0, 0, 0, 4, 0, 2, 0, 0, 3, 0, 2, 1])
np.diff
返回相邻值的差异,并利用 NaN 值“强制”它使用最后一个“好”值,但不起作用。
有没有一种简单的方法可以做到这一点?
四季花海
相关分类