3
我们有一些相同形状的数组,并且想合并它们。在Numpy中合并两个相同形状数组的最干净的方法
通过“合并”,我的意思是输出一个新的数组,每个位置的每个数组中的每个i,j的总和。
import numpy as np
first = np.array([[1,1],[1,1]])
second = np.array([[2,2],[2,2]])
third = np.array([[3,3],[3,3]])
结果应该是:
[[6,6],
[6,6]]
这里是我的代码......但有一个更清洁的方式?我似乎无法找到一个内置的方法:
def merge_arrays(arrays):
output = arrays[0]
for a in arrays[1:]:
for i,row in enumerate(a):
for j,col in enumerate(row):
output[i,j] += a[i,j]
return output
merge_arrays([first, second, third])
该死的,你确实知道了答案,但我不得不在ipython中试用它,但是你秒杀了我:D –
@KlausWarzecha - 当我没有先测试出问题时,我通常会被烧掉! (而且我这次也是这样做的......当我第一次输入时,忘记了'axis = 0'。) –
它......很......很漂亮! – LittleBobbyTables