If I had a 3D array of 550x129x3, how would I transform this into a cell array consisting of 3 cells in the array which contains 550x129 corresponding to it? I looked at the num2cell documentation and it doesn't mention how to organise it into that format.

 採用された回答

Star Strider
Star Strider 2019 年 4 月 18 日

1 投票

Use the mat2cell (link) function:
A = rand(550, 129, 3); % Create Matrix
C = mat2cell(A, size(A,1), size(A,2), ones(1,size(A,3))); % Cell Array
Check = cell2mat(cellfun(@size, C, 'Uni',0)) % Check (Delete Later)
producing:
Check(:,:,1) =
550 129
Check(:,:,2) =
550 129
Check(:,:,3) =
550 129

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeOperators and Elementary Operations についてさらに検索

質問済み:

2019 年 4 月 18 日

回答済み:

2019 年 4 月 18 日

Community Treasure Hunt

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

Start Hunting!

Translated by