【问题标题】:Summing Two arrays : ary1.cumsum[:n] + ary2[n]?对两个数组求和:ary1.cumsum[:n] + ary2[n]?
【发布时间】:2020-04-23 00:08:26
【问题描述】:

假设我有两个大小相同的数组,我怎样才能以 numpy 的方式获得具有以下元素的单个数组:

 a[:1].sum() + b[0] 
 a[:2].sum() + b[1]
 a[:3].sum() + b[2]
 a[:4].sum() + b[3]
 .....

【问题讨论】:

    标签: python numpy sum cumsum


    【解决方案1】:

    a.cumsum() + b 会做到的。

    例如,

    In [11]: a
    Out[11]: array([3, 5, 1, 4, 2, 6, 0, 5])
    
    In [12]: b
    Out[12]: array([1, 2, 3, 4, 5, 6, 7, 8])
    
    In [13]: a.cumsum() + b
    Out[13]: array([ 4, 10, 12, 17, 20, 27, 28, 34])
    

    比较一下:

    In [14]: [a[:k+1].sum() + b[k] for k in range(len(a))]
    Out[14]: [4, 10, 12, 17, 20, 27, 28, 34]
    

    【讨论】:

      猜你喜欢
      • 2019-09-24
      • 2020-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-17
      • 1970-01-01
      • 2021-05-19
      相关资源
      最近更新 更多