3

同じ形状の配列がいくつかあり、それらをマージしたいと考えています。

「マージ」とは、各位置の各配列の各 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])
4

1 に答える 1

4

それはちょうどoutput = first + second + thirdまたはnp.sum([first, second, third], axis=0)です。

于 2013-06-12T15:10:16.787 に答える