编程语言
首页 > 编程语言> > python – numpy数组中的多个累积和

python – numpy数组中的多个累积和

作者:互联网

我是numpy的新手,所以如果这个问题已经被问到我很抱歉.我正在寻找一种矢量化解决方案,它能够在一维numpy数组中运行多个不同大小的cumum.

my_vector=np.array([1,2,3,4,5])
size_of_groups=np.array([3,2])

我想要的东西

np.cumsum.group(my_vector,size_of_groups)
[1,3,6,4,9]

我不想要一个带循环的解决方案. numpy函数或numpy操作.

解决方法:

不确定numpy,但是pandas可以通过groupby cumsum很容易地做到这一点:

import pandas as pd

s = pd.Series(my_vector)
s.groupby(s.index.isin(size_of_groups.cumsum()).cumsum()).cumsum()

0    1
1    3
2    6
3    4
4    9
dtype: int64

标签:cumsum,python,arrays,numpy,vectorization
来源: https://codeday.me/bug/20191009/1876604.html