Flatten Any Mulitdimensional Matrix into a 2-D Matrix!

バージョン 1.0.0.0 (3.02 KB) 作成者: Darin Koblick
Convert any multidimensional matrix into a 2-D Matrix. Then convert it back to its original form.
ダウンロード: 330
更新 2012/7/23

ライセンスの表示

Take any N-D matrix in MATLAB and flatten it down into an N x size(ND,dim) 2-D matrix using fDim.m. This is often times necessary when writing complex operations on multidimensional matrices.

It is also desired that after flattening, the dimension that is preserved has the correct sequence. This is especially important for vector processing.

Once flattened, and an operation has been performed on the 2-D matrix, often times the 2-D matrix will need to be converted back to the original multidimensional matrix. This can be performed using eDim.m.

See the multiDimDemo.m for test cases using various matrix sizes and dimensions.

Example:
Given a multidimensional vector:
>> vector_1 = rand(3,3,3,4,5,3);

Flatten it into a 2-D matrix preserving the 3rd dimension which corresponds to the proper xyz order:
>> [vector_1_f, fSeq] = fDim(vector_1,3);

Convert the flattened matrix back to it's original multidimensional form still preserving the proper xyz order:
>> vector_1_e = eDim(vector_1_f,fSeq);

引用

Darin Koblick (2024). Flatten Any Mulitdimensional Matrix into a 2-D Matrix! (https://www.mathworks.com/matlabcentral/fileexchange/37589-flatten-any-mulitdimensional-matrix-into-a-2-d-matrix), MATLAB Central File Exchange. 取得済み .

MATLAB リリースの互換性
作成: R2012a
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersElementary Math についてさらに検索
謝辞

ヒントを与えたファイル: KeplerMinMax

Community Treasure Hunt

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

Start Hunting!
バージョン 公開済み リリース ノート
1.0.0.0