我尝试将同一个元素[n]的值与同一个numpy.array
中的下一个元素[n + 1]的差异构建起来。
必须对所有n重复此操作,我期望n-1个结果值 此外,我想避免使用循环,因为循环可能是编码元素的错误源。
现在我正在寻找类似的操作:
result = array[n+1] - array[n]
适用于所有n
。
我尝试了很多类似的实现,但我总是收到一些错误消息。
我怎样才能让它发挥作用?
答案 0 :(得分:2)
Numpy的diff()
功能可以满足您的要求。
以下是一个例子:
import numpy as np
a = np.arange(10) # this instantiates a numpy array containing values from 0 to 9
result = np.diff(a) # if you print this you'll see an array of 1 with length 9
如果你想要,你可以使用切片(我为所有新手添加这个,作为slicing的例子),如下所示:
result = a[1:] - a[:-1]
答案 1 :(得分:1)
null
输出:
x = np.array([2,3,1,0])
result = x[:-1] - x[1:]