【问题标题】:Setting a limit on the number of array elements to be cumulatively summed? [duplicate]对要累积求和的数组元素的数量设置限制? [复制]
【发布时间】:2015-06-14 18:44:08
【问题描述】:

我有一个长度为 5 的数组,例如

array = [1,2,6,4,3]

我想要的是一个新的数组,累积了一个最大集合数量的先前值,即 3:

return_array = [1,3,9,12,13]

使用 numpy 的 'cumsum' 函数似乎是一个很好的起点,但它似乎仅限于对整个元素范围求和,给出:

cumsum_array = np.cumsum(array)
cumsum_array = [1,3,9,13,16]

我错过了什么吗?

【问题讨论】:

标签: python arrays numpy cumulative-sum


【解决方案1】:

我会使用zip

a_ = [0] * 2 + a
list(map(sum, zip(a_, a_[1:], a_[2:])))

> [1, 3, 9, 12, 13]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-27
    • 2021-12-21
    • 2022-10-21
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 2011-04-06
    相关资源
    最近更新 更多