首页 > 解决方案 > 基于索引列表的列表中的累积添加

问题描述

说我有清单,list_a = [100, 5, 1, 2, 200, 3, 1, 300, 6, 6]

另一个清单,ind_list = [0, 4, 7]

我想创建第三个列表,该列表将包含第一个列表的累积总和,该列表从ind_list.

为了澄清,结果应该是res_list = [100, 105, 106, 108, 200, 203, 204, 300, 306, 312]

标签: pythonpython-2.7numpy

解决方案


使用以下内容:

cs= np.cumsum(list_a)
for i in ind_list:
    if i==0:
        continue
    cs[i:]-=cs[i-1]

结果:

cs
>>array([100, 105, 106, 108, 200, 203, 204, 300, 306, 312])

推荐阅读