Transform matrix in vectors in a cell array

hi,
I have a cell of n matrix of size m * m. I want to turn it into m vectors of size n knowing that: example: transform
c = {[3 2;1 4] [6 8;7 5] [0 10;9 11]}
to
d = {[3 6 0] [2 8 10] [1 7 9] [4 5 11]}
without using (for end) because the size of my matrix is large
thank you in advance

Respuestas (2)

Matt J
Matt J el 24 de Dic. de 2013
Editada: Matt J el 24 de Dic. de 2013
There is no way you can do this without at least an implicit for-loop
C=cat(3,c{:});
D=permute(C,[2,3,1]);
d=reshape(num2cell(D,2),[],1); %uses for-loop inside num2cell.m
I don't understand why you wouldn't just work with the 3D numeric array C or D.

Categorías

Preguntada:

el 24 de Dic. de 2013

Comentada:

el 25 de Dic. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by