How could I randomly split the columns of a matrix into 3 matrices with equal number of columns?

9 vues (au cours des 30 derniers jours)
Hi everyone,
I would like to ask if there is a way to split a matrix A, with dimensions (100 x 12) into three sub-matrices with dimensions 100 x 4 each. The splitting should be random. For example, sub-matrix B = [A(:,1) A(:,5) A(:,6) A(:,11)], but the elements of the B cannot be included in any of the other sub-matrices. For instance, a potential outcome of sub-matrix C could be C=[A(:,3) A(:,8) A(:,10) A(:,12)] and D=[A(:,2) A(:,4) A(:,7) A(:,9)]. As an extension of the question, ideally, I would like to get different sub-matrices every time I iterate the experiment.

Réponse acceptée

Matt J
Matt J le 22 Oct 2018
Modifié(e) : Matt J le 22 Oct 2018
Ar=A(:,randperm(12));
submatrix{1}=Ar(:,1:4);
submatrix{2}=Ar(:,5:8);
submatrix{3}=Ar(:,9:12);
  2 commentaires
gsourop
gsourop le 22 Oct 2018
Modifié(e) : gsourop le 22 Oct 2018
The submatrix should be submatrix{3}=Ar(:,9:12), right?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices 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