numpy数组求累加和
numpy.cumsum(a, axis=None, dtype=None, out=None)
按照所给定的轴参数返回元素的梯形累计和,axis=0,按照行累加。axis=1,按照列累加。axis不给定具体值,就把numpy数组当成一个一维数组。
>>>
>>> a = np.array([[1,2,3], [4,5,6]])
>>> a
array([[1, 2, 3],
[4, 5, 6]])
>>> np.cumsum(a)
array([ 1, 3, 6, 10, 15, 21])
>>> np.cumsum(a, dtype=float) # 指定输出类型。
#注意啦!没有指定轴!输出就变成1维数组了,如果你本来输入的就是1维数组,那就这样了。
array([ 1., 3., 6., 10., 15., 21.])
#array([1,1+2=3,1+2+3=6,1+2+3+4=10,1+2+3+4+5=15,1+2+3+4+5+6=21])
>>>
>>> np.cumsum(a,axis=0) # sum over rows for each of the 3 columns
#按照行累加,行求和
array([[1, 2, 3],
[5, 7, 9]]) #[1, 2, 3]
#[1+4=5,2+5=7,3+6=9]
>>> np.cumsum(a,axis=1) # sum over columns for each of the 2 rows
#按照列累加,列求和
array([[ 1, 3, 6],
[ 4, 9, 15]])
链接:https://www.jianshu.com/p/00cddc31db4d