Effacer les filtres
Effacer les filtres

how to divide matrix using mat2cell

1 vue (au cours des 30 derniers jours)
Lucrezia Cester
Lucrezia Cester le 13 Fév 2021
Commenté : Lucrezia Cester le 13 Fév 2021
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])

Réponse acceptée

Jan le 13 Fév 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 commentaire
Lucrezia Cester
Lucrezia Cester le 13 Fév 2021
thank you very much! yes this worked better

Connectez-vous pour commenter.

Plus de réponses (0)


En savoir plus sur Numeric Types 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