【こつこつPython】Pythonで配列を新たな次元で結合する方法|numpy.stack

【こつこつPython】Pythonで配列を新たな次元で結合する方法|numpy.stack

Pythonで配列を新たな次元に沿って結合する方法です。
使用するのはPythonのnumpyライブラリのstack関数です。

import numpy as np

このような配列を使用します。

a = np.array([1, 2, 3])
a

まず、stack関数を使用して、配列aどうしを結合してみましょう。
引数に結合したい配列をリストやタプルで指定します。
実行します。

np.stack([a, a])

配列aどうしを結合できました。
stack関数では新たな次元に沿って結合するため、1次元配列が2次元配列になります。

今度はこのような2次元配列を使用します。

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

stack関数を使用して、配列bどうしを結合してみましょう。
実行します。

np.stack([b, b])

配列bどうしを結合できました。
2次元配列を結合すると、3次元配列になります。

なお、似た関数にconcatenate関数があります。
stack関数は新たな次元に沿って配列を結合しますが、concatenate関数は既存の次元に沿って配列を結合します。

関連メソッド

【こつこつPython】Pythonで配列を任意の方向に結合する方法|numpy.block

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

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