How to concatenate matrices using for loop?

4 visualizzazioni (ultimi 30 giorni)
Dear All:
I have a group of matrices of size (100X3). If possible, I want to concatenate them in one larger matrix using a for a loop. I want to use a loop because the number of matrices differs for each run so using the command [ x1 x2 ...] is not practical.
Thank you, Aziz
  2 Commenti
James Tursa
James Tursa il 9 Dic 2017
How are the individual matrices stored? In individual variable names like x1, x2, etc.? Or in a cell array? Or as fields of a struct? Or ...?
Abdulaziz Abutunis
Abdulaziz Abutunis il 9 Dic 2017
Thank you for the respond. The are stored such as x{1}, x{2}..... each has the same size 68*3 elements
Thanks again

Accedi per commentare.

Risposta accettata

James Tursa
James Tursa il 9 Dic 2017
If x is a cell array, and you simply want all of them, then
result = cell2mat(x);
or if you want them stacked vertically
result = cell2mat(x');
If you want a subset of the cells, then specify the range. E.g.,
result = cell2mat(x(range));
or if you want them stacked vertically
result = cell2mat(x(range)');
  1 Commento
Abdulaziz Abutunis
Abdulaziz Abutunis il 9 Dic 2017
Wow it did exactly what i want in an easy way, thank you so much James Tursa

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by