2017-02-10 83 views
1

我都存儲在一個變量,x,它看起來像以下np.array如何從前一行中減去?

array([[ 956], 
     [ 929], 
     [1083], 
     [1074], 
     [ 922]] 

我想從以前的數減去每一個數字,我希望有一個新的變量,y,看起來象下面這樣:

array([[ -27], 
     [ 154], 
     [ -9], 
     [-152]] 
+3

直視'np.diff' –

+0

@PaulPanzer他有名單,他首先要扁平化的列表。 –

+3

@TonyTannous上次我檢查diff有一個'axis'參數。此外,它不是列表列表,它是一個二維數組:-P –

回答

2
import numpy as np 

x = np.array([[ 956], 
     [ 929], 
     [1083], 
     [1074], 
     [ 922]] 

out = np.diff(out, axis=0) 

Out: array([[ -27], 
    [ 154], 
    [ -9], 
    [-152]] 
+1

或'np.diff(a,axis = 0)'(在這種情況下,您不需要'hstack'和'L') –

+0

@ tobias_k感謝您指出。 –

+1

當你使用'axis'參數時,你不需要做'hstack'和'L = ...'理解。只需'np.diff(x,axis = 0)'而沒有別的。請參閱[文檔](https://docs.scipy.org/doc/numpy/reference/generated/numpy.diff.html) –

相關問題