Numpy を使用して配列次元交換を実装する
Numpy は、科学計算とデータ処理のための強力な Python ライブラリです。これには、配列に対してさまざまな操作を簡単に実行できる豊富な関数とツールが含まれており、その 1 つは配列の次元の交換です。この記事では、Numpy を使用して配列の次元交換を実装する方法と、具体的なコード例を紹介します。
まず、Numpy ライブラリをインポートする必要があります。
import numpy as np
次に、多次元配列を作成できます。説明の便宜上、最初に 3 次元配列を作成します:
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8] , 9 ], [10, 11, 12]]])
これで、transpose 関数を使用して配列の次元を交換できるようになります。転置関数は、次元の順序を指定するパラメータを受け入れることができます。
arr_transused = np.transpose(arr, (2, 0, 1))
print(arr_transused)
上記の例では、元の配列 arr の次元の順序を変更します。 (0, 1, 2) は (2, 0, 1) に交換されます。結果は、元の配列の最初の次元を末尾に、2 番目の次元を最初の位置に、3 番目の次元を 2 番目の位置に移動します。
上記のコードを実行すると、出力は次のようになります:
[[[ 1 4]
[ 7 10]]
[[ 2 5]
[ 8 11 ]]
[[ 3 6]
[ 9 12]]]
元の配列の次元が正常に交換されたことがわかります。最初の 2 次元配列は [[1, 4], [7, 10]] になり、2 番目の 2 次元配列は [[2, 5], [8, 11]] になり、3 番目の 2 次元配列は次のようになります。 [[2, 5], [8, 11]]。次元配列は [[3, 6], [9, 12]] になります。
Numpy は、transpose 関数の使用に加えて、swapaxes 関数や rollaxis 関数など、配列次元を操作するための他の関数も提供します。特定のニーズに応じて、適切な機能を選択して操作できます。
import numpy as np
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]])
arr_swapped = np.swapaxes(arr, 0, 2)
print(arr_swapped)
arr_rolled = np.rollaxis(arr, 2, 0)
print(arr_rolled)
上記のコードでは、それぞれ swapax を関数と rollaxis 関数は、配列の次元を交換するために使用されます。関数 swapaxes は、スワップする次元を指定する 2 つのパラメーターを受け入れますが、関数 rollaxis は、操作対象の配列、移動する次元、および移動先の位置の 3 つのパラメーターを受け入れます。
要約すると、Numpy を使用して配列の次元を交換するのは非常に簡単です。 Numpy ライブラリをインポートし、そこに提供されている関数を使用するだけです。上記のコードは、transpose 関数、swapaxes 関数、および rollaxis 関数を使用して配列の次元を交換する例を示しています。特定のニーズに応じて、使用する適切な関数を選択できます。
この記事があなたのお役に立てば幸いです。また、Numpy の世界で幸せなプログラミングができることを願っています。
以上がnumpyによる配列サイズ交換の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。