ディレクトリ
3つの方法が、転置あり、
transpose
メソッド、T
プロパティ、およびswapaxes
メソッドが。
1.T--は、二次元アレイに適用されます
In [1]: import numpy as np
In [2]: arr = np.arange(20).reshape(4,5) # 生成一个4行5列的数组
In [3]: arr, arr.shape()
Out[3]:
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]])
(4, 5)
In [4]: arr.T, arr.T.shape()
Out[4]:
array([[ 0, 5, 10, 15],
[ 1, 6, 11, 16],
[ 2, 7, 12, 17],
[ 3, 8, 13, 18],
[ 4, 9, 14, 19]])
(5, 4)
2. 適しtranspose--高次元アレイ
高次元アレイ、転置するために、軸数で構成される組を使用するトランスポーズの必要性のために。
例えば、3次元配列は、それが右の寸法、すなわち0,1,2、番号付けされています。
In [0]: arr1 = np.arange(12).reshape(2,2,3)
In [1]: arr1
Out[1]:
array([[[ 0, 1, 2],
[ 3, 4, 5]],
[[ 6, 7, 8],
[ 9, 10, 11]]])
In [2]: arr1.shape
Out[2]: (2, 2, 3)
In [3]: arr1.transpose((1,0,2))
Out[3]:
array([[[ 0, 1, 2],
[ 6, 7, 8]],
[[ 3, 4, 5],
[ 9, 10, 11]]])
In [4]: arr1.shape
Out[4]: (2, 2, 3) # 相当于将0维和1维进行了维度调换
3。swapaxes
我々は上記のその部分を理解したらswapaxes
方法をも十分に理解しました。それは、軸番号のペアを受け入れます。軸を交換するため。実際には、それがあるshape
パラメータ。
In [67]: arr2 = np.arange(16).reshape(2,2,4)
In [68]: arr2
Out[68]:
array([[[ 0, 1, 2, 3],
[ 4, 5, 6, 7]],
[[ 8, 9, 10, 11],
[12, 13, 14, 15]]])
In [69]: arr2.shape
Out[69]: (2, 2, 4)
In [70]: arr2.swapaxes(1,2)
Out[70]:
array([[[ 0, 4],
[ 1, 5],
[ 2, 6],
[ 3, 7]],
[[ 8, 12],
[ 9, 13],
[10, 14],
[11, 15]]])