多个数组的Numpy元素明智加法



我想知道是否有一种更有效/python的方式来添加多个numpy数组(2D),而不是:

def sum_multiple_arrays(list_of_arrays):
a = np.zeros(shape=list_of_arrays[0].shape) #initialize array of 0s
for array in list_of_arrays:
a += array
return a 

Ps:我知道np.add(),但它只适用于2个数组。

np.sum(list_of_arrays, axis=0) 

应该工作。或者

np.add.reduce(list_of_arrays). 

最简单最python化的解决方案就是使用sum(),如下所示:

sum(list_of_arrays)

我知道问题说numpy,但这里有一个纯python的答案,以防有人需要它。

map(sum, zip(a,b))它返回一个生成器。您也可以执行list(map(sum, zip(a,b)))以获取列表

最新更新