热线电话:13121318867

登录
2020-05-22 阅读量: 984
Python中cumsum函数

cumsum函数定义:

cumsum(a, axis=None, dtype=None, out=None)  

a.cumsum(axis=None, dtype=None, out=None)

*****返回:这个函数的功能是返回给定axis上的累计和。沿着指定轴的元素累加和所组成的数组,其形状应与输入数组a一致。

*****其中cumsum函数的参数:

a:数组

axis:轴索引,整型,若a为n维数组,则axis的取值范围为[0,n-1]

dtype:返回结果的数据类型,若不指定,则默认与a一致。

out:数据类型为数组。用来放置结果的替代输出数组,它必须具有与输出结果具有相同的形状和缓冲长度

*****代码示例:

1、对于一维数组而言:

import numpy as np

arr=np.array([1,2,3,4,5,6,7,8,9])

result=arr.cumsum() #此时axis只能取0,因此,axis=0可不写

#result: array([ 1, 3, 6, 10, 15, 21, 28, 36, 45], dtype=int32)

输出结果的数组result[i]的结果为sum(arr[:i+1])。

2.对于二维数组而言

import numpy as np

arr=np.array([[1,2,3],[4,5,6],[7,8,9]])

#沿着axis=0轴计算

result1=arr.cumsum(0) #array([[ 1, 2, 3],[ 5, 7, 9],[12, 15, 18]], dtype=int32)

#沿着axis=1轴计算

result2=arr.cumsum(1) #array([[ 1, 3, 6],[ 4, 9, 15],[ 7, 15, 24]], dtype=int32)

#arr.cumsum()并不是arr.cumsum(0)和arr.cumsum(1)的并集,而是将arr重塑为一维数组后的,再计算cumsum()的结果

arr.cumsum()#array([ 1, 3, 6, 10, 15, 21, 28, 36, 45], dtype=int32)

输出结果的数组result1[i][j]的结果为sum(arr[:i+1,j]);

输出结果的数组result2[i][j]的结果为sum(arr[i,:j+1])。

38.2022
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子