【毎日Python】Pythonで配列を結合する方法|numpy.concatenate

【毎日Python】Pythonで配列を結合する方法|numpy.concatenate

Pythonで配列を結合する方法です。
使用するのは、Pythonのnumpyライブラリのconcatenate関数です。

import numpy as np

まず、このような2つの配列で試してみましょう。

a_1 = np.array([[5, 5, 5], [5, 5, 5]])
a_2 = np.array([[10, 10, 10] , [10, 10, 10]])

concatenate関数の引数に、結合したい配列をリストで指定します。
実行します。
2つの配列を結合することができました。
このように、デフォルトでは行方向に結合されます。

np.concatenate([a_1, a_2])

実行結果:

array([[ 5,  5,  5],
       [ 5,  5,  5],
       [10, 10, 10],
       [10, 10, 10]])

列方向に結合するには、引数axisに1を渡します。
実行します。
列方向に結合することができました。

np.concatenate([a_1, a_2],axis=1)

実行結果:

array([[ 5,  5,  5, 10, 10, 10],
       [ 5,  5,  5, 10, 10, 10]])

なお、3つ以上の配列を結合することもできます。
実行します。
3つの配列を結合することができました。

a_1 = np.array([[5, 5, 5], [5, 5, 5]])
a_2 = np.array([[10, 10, 10] , [10, 10, 10]])
a_3 = np.array([[20, 20, 20], [20, 20, 20]])
np.concatenate([a_1, a_2, a_3])

実行結果:

array([[ 5,  5,  5],
       [ 5,  5,  5],
       [10, 10, 10],
       [10, 10, 10],
       [20, 20, 20],
       [20, 20, 20]])