how to divide matrix using mat2cell

3 visualizaciones (últimos 30 días)
Lucrezia Cester
Lucrezia Cester el 13 de Feb. de 2021
Comentada: Lucrezia Cester el 13 de Feb. de 2021
Hello,
I have a 9 matrices of size 1x21996,
how can I divide the 9 matrices to be 6 of 1x3666 each?
I tried this but it only saves the last iteration
for a=1:numel(B)
A=mat2cell( B{a},[1],[3666 3666 3666 3666 3666 3666])
end
thanks.

Respuesta aceptada

Jan
Jan el 13 de Feb. de 2021
Are you sure you need a cell array? If the chunks have the same size a numerical array is much more efficient:
A = rand(1, 21996);
B = reshape(A, [], 6);
Now use B(:, k) to access the k.th subvector.
If you really need a cell:
C = num2cell(reshape(A, 6, []), 2);
  1 comentario
Lucrezia Cester
Lucrezia Cester el 13 de Feb. de 2021
thank you very much! yes this worked better

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Types en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by