函數原型:numpy.cumsum(a, axis=None, dtype=None, out=None)
可參考鏈接:https://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.cumsum.html查看各個參數的含義。
函數作用:求數組的所有元素的累計和,可通過參數axis指定求某個軸向的統計值。這里所說的軸可按照下圖的含義理解:
下面舉例進行說明:
(1)不指定axis參數
1 >>> a = np.array([[1, 2, 3], [4, 5, 6]]) 2 >>> a 3 array([[1, 2, 3], 4 [4, 5, 6]]) 5 >>> a.cumsum() 6 array([ 1, 3, 6, 10, 15, 21], dtype=int32)
可以看出,不指定axis參數時,把二維數組當作了一維數組處理,進行累計求和運算。
(2)指定參數axis=0
1 >>> arr 2 array([[0, 1, 2], 3 [3, 4, 5], 4 [6, 7, 8]]) 5 >>> np.cumsum(arr, axis=0) 6 array([[ 0, 1, 2], 7 [ 3, 5, 7], 8 [ 9, 12, 15]], dtype=int32) 9 >>>
np.cumsum(arr, axis=0)和arr.cumsum(axis=0)是一樣的。可以看出,上述代碼是按照軸0進行累計求和的。
(3)指定參數axis=1
1 >>> arr 2 array([[0, 1, 2], 3 [3, 4, 5], 4 [6, 7, 8]]) 5 >>> arr.cumsum(axis=1) 6 array([[ 0, 1, 3], 7 [ 3, 7, 12], 8 [ 6, 13, 21]], dtype=int32)
可以看出,上述代碼是按照軸1進行累計求和的。
關於更高維的數組的運算就不測試了,暫時也用不上。