You can achieve this using np.roll
, by dividing a
by a
-shifted:
>>> a = np.array([[1,2], [4,10], [4,6]])
array([[ 1, 2],
[ 4, 10],
[ 4, 6]])
>>> shifted_a = np.roll(a, shift=1, axis=0)
array([[ 4, 6],
[ 1, 2],
[ 4, 10]])
>>> shifted_a / a
array([[0.25 , 0.33333333],
[4. , 5. ],
[1. , 0.6 ]])
Then discard the first rows:
>>> (shifted_a / a)[1:]
array([[4. , 5. ],
[1. , 0.6]])
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…