3D array to cell array

31 vues (au cours des 30 derniers jours)
Ali G
Ali G le 18 Avr 2019
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.

Réponse acceptée

Star Strider
Star Strider le 18 Avr 2019
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

Plus de réponses (0)

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by