Concatenate a variable number of matrices
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi All,
How can I concatenate a variable number of matrices that is decided by the user's input?
Thanks..
1 commentaire
Stephen23
le 23 Oct 2017
Modifié(e) : Stephen23
le 23 Oct 2017
This is simple. Ensure that you store all of the matrices in one cell array C, then you can simply do this:
cat(3,C{:})
You can change the dimension to suit your needs. Also you can easily select how many you want to concatenate, by using simple and efficient indexing 1:N:
cat(3,C{1:N})
Note that accessing lots of separate variables inside a loop is very slow, complex and buggy:
Réponses (1)
KL
le 23 Oct 2017
Modifié(e) : KL
le 23 Oct 2017
I suppose your matrices have (in fact, they should be) consistent dimensions, so you could as well store them in ND array.
dummy = rand(3,3,5);
user_choice = 3; %concatenate first 3 matrices
res = reshape(dummy(:,:,1:user_choice),size(dummy,1),size(dummy,2)*user_choice)
Is this what you want?
0 commentaires
Voir également
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!