Effacer les filtres
Effacer les filtres

Dividing matrix in four parts

1 vue (au cours des 30 derniers jours)
Maryam Hamrahi
Maryam Hamrahi le 27 Juin 2016
Commenté : Maryam Hamrahi le 27 Juin 2016
I have a matrix with three columns and n rows.
I would like to produce four matrices with three columns and different rows. it is not important that matrices do not have the same rows.
For instance:
A has 210 rows.
I want to have B with 40 rows, C with 60 rows, D with 30 rows, and E with 80 rows.
Thanks a lot for help.

Réponses (2)

Azzi Abdelmalek
Azzi Abdelmalek le 27 Juin 2016
A=rand(210,3);
out=mat2cell(A,[40 60 30 80]',3)
You have your 4 matrices
out{1}
out{2}
out{3}
out{4}
  1 commentaire
Maryam Hamrahi
Maryam Hamrahi le 27 Juin 2016
many thank for the response. I want to have a code which work with different A

Connectez-vous pour commenter.


Jan Orwat
Jan Orwat le 27 Juin 2016
Modifié(e) : Jan Orwat le 27 Juin 2016
A = zeros(210,3); %example
split = [40 60 30 80];
A_split = mat2cell(A,split);
[B, C, D, E] = A_split{:};
doc mat2cell
  1 commentaire
Maryam Hamrahi
Maryam Hamrahi le 27 Juin 2016
Many thanks for the response. But A was just an example.
I want a code to work for every matrix with n rows and three columns.

Connectez-vous pour commenter.

Catégories

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