我想知道是否有一种更有效/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)))
以获取列表