1

numpy などを使用して Python で 2D 配列をマージすることは可能ですか? 約 200 個の 2D 配列があり、すべて同じ次元 (1024,256) で、それらを互いの下端に追加したいと考えています。たとえば 3 つ追加した後の最終的な形状は (1024,768) になります。

4

2 に答える 2

7

(1024,256) の 3 つの配列は、下端ではなく右端に追加する必要があります。それらを横に並べて積み重ねています(1024行、256列)。

numpy.hstack( hを水平として)を使用:

lst(numpyまたはpython)配列のリストです(1024,256)

numpy.hstack(lst)

単一のnumpy配列を返します(1024,256*len(lst))

于 2012-07-05T08:18:17.627 に答える
0

すべての配列が同じサイズであれば、実際には非常に簡単です。

>>> a = [[0,1,2],[3,4,5]]
>>> b = [[6,7,8],[9,10,11]]
>>> c = [a[i]+b[i] for i in xrange(len(a))]
>>> c
[[0, 1, 2, 6, 7, 8], [3, 4, 5, 9, 10, 11]]

またはそれ以上

sum2darray = lambda a, b:  [a[i]+b[i] for i in xrange(len(a))]
c = sum2darray(a,b)
于 2012-07-05T08:36:20.550 に答える