>クリックはこちら

【毎日Python】Pythonで配列に末尾に要素を追加する方法|numpy.append

Pythonで配列の末尾に値や配列を追加する方法です。
使用するのは、Pythonのnumpyライブラリのappend関数です。

import numpy as np

まず、このような1次元配列で試してみましょう。

a_1 = np.array([1, 2, 3, 4, 5])

appned関数の第1引数に変数名、第2引数に追加する値を指定します。
実行します。
配列の末尾に100を追加することができました。

np.append(a_1, 100)

実行結果:

array([  1,   2,   3,   4,   5, 100])

複数の値を追加することもできます。
第2引数に、リストで値を指定します。
実行します。
指定した複数の値を追加することができました。

np.append(a_1, [50, 55, 60])

実行結果:

array([ 1,  2,  3,  4,  5, 50, 55, 60])

次に、2次元配列で試してみましょう。

a_2 = np.array([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9]])

そのまま第二引数に値を指定して実行すると、1次元配列として値が追加されます。

np.append(a_2, 100)

実行結果:

array([  1,   2,   3,   4,   5,   6,   7,   8,   9, 100])

まず、列方向に値を追加してみましょう。
この2次元配列を追加します。

b = np.array([[10, 20, 30]])

列方向・行方向に配列を追加するには、引数axisを使用します。
第一引数に配列、第二引数に追加したい配列、第三引数に引数axisに0を渡します。
実行します。
配列を行方向に追加することができました。
なお、追加する配列の列数は、元の配列の列数と同じにする必要があります。

np.append(a_2, b, axis=0)

実行結果:

array([[ 1,  2,  3],
       [ 4,  5,  6],
       [ 7,  8,  9],
       [10, 20, 30]])

次に、行方向に値を追加してみましょう。
この2次元配列を追加します。

c = np.array([[10],
              [20],
              [30]])

第一引数に配列、第二引数に追加したい配列、第三引数に引数axisに1を渡します。
実行します。
配列を列方向に追加することができました。
なお、追加する行列の列数は、元の配列の行数と同じにする必要があります。

np.append(a_2, c, axis=1)

実行結果:

array([[ 1,  2,  3, 10],
       [ 4,  5,  6, 20],
       [ 7,  8,  9, 30]])

関連メソッド

【毎日Python】Pythonでリストの末尾に要素を追加する方法|append

【毎日Python】Pythonでリストの場所を指定して要素を追加する方法|insert

【毎日Python】Pythonで配列を横方向に結合する方法|numpy.hstack

【毎日Python】Pythonで配列を縦方向に結合する方法|numpy.vstack