несколько встроенных NumPy будут выполнять эту работу - в частности, diff, ediff1d и Градиент .
я подозреваю, ediff1d - лучший выбор для конкретного приведения, описанного в OP - в отличие от двух других, ediff1d фактически направлен / ограничен этим конкретным случаем использования - т.е. разности первого порядка вдоль одной оси (или оси массива 1D).
>>> import numpy as NP
>>> x = NP.random.randint(1, 10, 10)
>>> x
array([4, 6, 6, 8, 1, 2, 1, 1, 5, 4])
>>> NP.ediff1d(x)
array([ 2, 0, 2, -7, 1, -1, 0, 4, -1])