函数原型: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进行累计求和的。
关于更高维的数组的运算就不测试了,暂时也用不上。