8
我有一個numpy的陣列是這樣的:移位所有索引中NumPy的陣列
x=np.array([0,1,2,3,4])
,並希望在那裏索引0處的值是在索引1創建一個數組,索引1是在索引2等
我想輸出是:
y=np.array([0,0,1,2,3]).
我猜有一個簡單的方法來做到這一點,而無需通過完整的循環訪問數組。我怎樣才能以numPythonic的方式做到這一點?
我有一個numpy的陣列是這樣的:移位所有索引中NumPy的陣列
x=np.array([0,1,2,3,4])
,並希望在那裏索引0處的值是在索引1創建一個數組,索引1是在索引2等
我想輸出是:
y=np.array([0,0,1,2,3]).
我猜有一個簡單的方法來做到這一點,而無需通過完整的循環訪問數組。我怎樣才能以numPythonic的方式做到這一點?
您可以使用
y = numpy.roll(x, 1)
y[0] = 0
或
y = numpy.r_[0, x[:-1]]
如果你想這樣做原地的,你也可以這樣做:
x[1:] = x[:-1]
x[0] = 0
NumPy的斯文救援。謝謝! – Idr 2011-05-02 16:24:10