フィルターのクリア

Convert a 3D array to a 2D cell array?

10 ビュー (過去 30 日間)
Niky Taylor
Niky Taylor 2017 年 10 月 13 日
コメント済み: Niky Taylor 2017 年 10 月 16 日
I'm sure there's a basic way to do this that I haven't found.
I have a 3D array, but I want to convert it into a 2D cell array where each cell contains the data currently contained in the 3rd dimension, so:
if given some 3D array A = rand(10,10,4);
make a 2D cell array B that is 10x10 cells, but each cell contains 1x4.
Thanks so much.

採用された回答

Matt J
Matt J 2017 年 10 月 13 日
B=num2cell(A,3)
  2 件のコメント
Matt J
Matt J 2017 年 10 月 13 日
but each cell contains 1x4.
If you really do need a 1x4 shape, you can do
[m,n,p]=size(A);
B=num2cell(reshape(A,[],p), 2);
B=reshape(B,m,n);
Niky Taylor
Niky Taylor 2017 年 10 月 16 日
Thanks!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeData Types についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by