3次元から2次元に形状変換

68 ビュー (過去 30 日間)
sz
sz 2021 年 10 月 21 日
編集済み: Akira Agata 2021 年 10 月 21 日
3×3のデータが100個ある3次元データがあります。
この3×3×100のものを9×100の二次元に並び変えて反感したいのですが、出来ません。
どのようにするか分かればスクリプトを書いて頂けると助かります。
1 1 0
1 1 1
0 1 1
上記のようなのが100こある状態です。
100個とも
110111011といったように形状を変えて二次元にしたいです。
よろしくお願いいたします

採用された回答

Akira Agata
Akira Agata 2021 年 10 月 21 日
編集済み: Akira Agata 2021 年 10 月 21 日
下記の方法ではいかがでしょうか?
% 変数 A はサイズが 3×3×100 の3次元配列と想定
A = reshape(permute(A, [2 1 3]), 1, [], 100);
A = squeeze(A)';
例:
% 簡単のため 3×3×3 の3次元配列を作成
A = repmat([1 2 3; 4 5 6; 7 8 9], 1, 1, 3);
% 変換
A = reshape(permute(A, [2 1 3]), 1, [], 3);
% 2次元配列に集約
A = squeeze(A)';
% 表示
disp(A)
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9

その他の回答 (0 件)

カテゴリ

Help Center および File Exchangeデータ型の識別 についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!