ホームページ >バックエンド開発 >Python チュートリアル >3次元配列を転置するためのnumpy.transposeメソッド
以下は numpy.transpose の 3 次元配列の転置方法に関する記事です。非常に参考になるので、皆さんの参考になれば幸いです。見てみましょう
以下に示すように: 、2) 、 の配列
import numpy as npなぜ、tanspose (1, 0, 2) と入力した後、配列は
arr1 = np.arange(16).reshape((2, 2, 4))
#[[[ 0 1 2 3]
# [ 4 5 6 7]]
# [[ 8 9 10 11]
# [12 13 14 15]]]
arr2=arr1.transpose((1,0,2))
#[[[ 0 1 2 3]
# [ 8 9 10 11]]
#
# [[ 4 5 6 7]
# [12 13 14 15]]]
arr1[0,1,0]を使用した場合、インデックス値は4になります
arr2[1,0,0]を使用した場合、インデックス値は4になります
変化と正の順序を比較してくださいインデックス パラメーター テーブルの転置順序の違いと何らかの関係があるようです arr1 配列の場合、インデックス パラメーター テーブル [0, 0, x] は、現在の 2 つのパラメーターの後の最初のページの最初の行を表すことができます。交換され、同じ要素のインデックス パラメータ テーブルは変更されていませんつまり、arr2 の最初のページの最初の行は、arr1 の最初のページの最初の行と同じです arr1 配列の場合、インデックス パラメータtable [0, 1, x] は、最初のページの 2 行目を表すことができます。現在の 2 つのパラメーターが交換された後、[0, 1, 0] などの同じ要素のインデックス値は [1, 0, 0] になります。 , これは、インデックス値 4 のインデックス パラメーター テーブルの違いを説明していますこれは大まかな考え方です。つまり、配列の最初のページの 2 行目である transpose(1,0,2) と、 2ページ目の1行目が入れ替えられます
以下の4つの転置方法もほぼ同じ考え方です、よく観察してください、理解するのは難しいことではありません
#[[[ 0 1 2 3] # [ 4 5 6 7]] # [[ 8 9 10 11] # [12 13 14 15]]]ここで注目すべきは、arr4配列は次のようになるということです4ページというのは、ページ番号と行コードを入れ替えると
ページ番号が2から4
になり、2になったからです。
#[[[ 0 1 2 3] # [ 8 9 10 11]] # # [[ 4 5 6 7] # [12 13 14 15]]]さらに、transpose (2, 0, 1)は、transpose (0, 2, 1)を最初にtranspose (1, 0, 2)とみなすことができます Transpose (2, 1, 0)最初に (1, 0, 2) を転置し、次に (0, 2, 1) を転置し、最後に (1, 0, 2) を転置すると見ることができます (1, 2, 0) を転置すると、転置すると見ることができます(1, 0, 2) を最初に転置し、次に (0, 2, 1) を転置します コードは次のように記述できます
arr3=arr1.transpose((0,2,1)) # [[[ 0 4] # [ 1 5] # [ 2 6] # [ 3 7]] # # [[ 8 12] # [ 9 13] # [10 14] # [11 15]]] arr4=arr1.transpose((2,0,1)) #[[[ 0 4] # [ 8 12]] # # [[ 1 5] # [ 9 13]] # # [[ 2 6] # [10 14]] # # [[ 3 7] # [11 15]]]
arr5=arr1.transpose((2,1,0)) #[[[ 0 8] # [ 4 12]] # # [[ 1 9] # [ 5 13]] # # [[ 2 10] # [ 6 14]] # # [[ 3 11] # [ 7 15]]] arr6=arr1.transpose((1,2,0)) #[[[ 0 8] # [ 1 9] # [ 2 10] # [ 3 11]] # # [[ 4 12] # [ 5 13] # [ 6 14] # [ 7 15]]]同じ結果です! 関連する推奨事項: numpy の array と asarray の違い numpy でブール配列を処理する方法
以上が3次元配列を転置するためのnumpy.transposeメソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。