Numpy配列の結合方法はとしてなどが,concatenate関数,stack関数などがありますが,複雑な配列の結合には向いておりませんnumpy.block関数を使うことで簡単に結合できます.
numpy.block関数で複数の配列を結合
複数の2次元配列を組み合わせてnumpy.block関数を使って結合させます.結合させるのはa~eまでの5つの配列で構成されていて,aとeは2行3列でありc,d,eは2行2列です.結合後の配列をfとします.
結合後の配列をfとし上段はAとBを配置し,下段はC,D,Eとを配置し結合させます.
下記ににblock関数で結合する配列図を記載します.
複数の配列をblock関数で結合していきます.
[IN]
import numpy as np
a = np.array([[0, 0, 0 ],
[0, 0, 0 ]])
b = np.array([[1, 1, 1 ],
[1, 1, 1 ]])
c = np.array([[2, 2 ],
[2, 2 ]])
d = np.array([[3, 3, ],
[3, 3, ]])
e = np.array([[4, 4, ],
[4, 4, ]])
f = np.block([[a, b], #上段の配列
[c, d, e]]) #下段の配列 を結合
print(" block \n", f)
[OUT]
block
[[0 0 0 1 1 1]
[0 0 0 1 1 1]
[2 2 3 3 4 4]
[2 2 3 3 4 4]]
block関数を一回使っただけで,複数の配列が簡単に結合ができました.
スポンサーリンク
コメント