的累積總和我有一個numpy的陣列等運行1D NumPy的陣列
x=np.array([1,2,3,4])
我想創建另一個numpy的量陣列y是x的累計總和,使得
y=np.array([1,3,6,10])
什麼是一個很好的數字Pythonic方式來做到這一點?
的累積總和我有一個numpy的陣列等運行1D NumPy的陣列
x=np.array([1,2,3,4])
我想創建另一個numpy的量陣列y是x的累計總和,使得
y=np.array([1,3,6,10])
什麼是一個很好的數字Pythonic方式來做到這一點?
y = np.cumsum(x)
見http://docs.scipy.org/doc/numpy/reference/generated/numpy.cumsum.html
另一種選擇是:
y = np.add.accumulate(x)
這往往倍np.cumsum
快,即使文件說,他們是等價的。
任何想法爲什麼它更快? – endolith 2012-08-22 13:57:10
@丹,我可以在原地得到結果。我想結果也在'x'中,而不是另一個數組'y' – Samuel 2013-08-28 13:00:48