transpose関数【NumPy】
同様の機能をもつものとして、ここではtranspose関数について確認しよう。
いきなり4次元配列で試す。引数には対象となる配列を与える。
code:p01.py
import numpy as np
D = np.arange(24).reshape(1, 2, 3, 4)
print('D')
print(D.ndim, D.shape)
D2 = np.transpose(D)
print('transpose(D)')
print(D2.shape)
各軸の長さを確認すると、
code:result.sh
D
4 (1, 2, 3, 4)
transpose(D)
4 (4, 3, 2, 1)
第2引数で変換先の軸を指定することができる。引数の数は配列の次元数(ndim属性)だけ与える。
transpose(配列, (軸0の変換先, 軸1の変換先, 軸2の変換先, 軸3の変換先, ....))
code:(続き)p01.py
D3 = np.transpose(D, (0, 2, 1, 3))
print('transpose(D)')
print(D3.ndim, D3.shape)
指定通りの形状の行列が得られている。
code:result.txt
transpose(D)
4 (1, 3, 2, 4)