2016-10-17 11 views
1

外部モジュールによってnumpyのndarrayが返されました。配列の形状は(3,3,128)です。基本的には128タイルのスタックで、各タイルは3x3です。numpy ndarrayの並べ替えと整形の要素

形状が(128,3,3)になるように並べ替える方法を教えてください。タイル番号でインデックスを作成する方が簡単です。最後のステップは(128,9)に平坦化され、128タイルのそれぞれに9値ベクトルとして簡単にアクセスできるようになります。

答えて

1

あなたが指定した新しい配列順序で移調使用することができ、たとえば、あなたがチェックすることができ

a = np.arange(0,3*3*128).reshape(3,3,128) 
a_reorder = a.transpose([2,0,1]) 

は、すべてのタイルを比較することによって、正しい、

np.all([np.all(a[:,:,i]==a_reorder[i,:,:]) for i in range(128)]) 

a_flat = a_reorder.reshape(128,9) 
で平らに
+0

迅速な返信ありがとうございます。それは動作します。 – Sudhashbahu

関連する問題