how to concatenate matrix horizontally for a large number of matrices in a for loop

2 vues (au cours des 30 derniers jours)
For example,
I am doing data analysis of a matrix of A whose dimension is 175x90. Since I analyze this dataset one by one such that A(:,1), A(:,2)...A(:,90). In the end, I hope I could still obtain a matrix of of B whose dimension is also 175x90. So I decided to use "horzcat" command such that B=horzcat(A(:,1), A(:,2)...A(:,90)). However, since there could be a really large number for me to concatenate, how can I achieve this in a loop rather than do this manually?
Thank you so much!
  2 commentaires
Walter Roberson
Walter Roberson le 28 Fév 2019
B = A;
would have the same effect as that horzcat()
Taoooooooooooo
Taoooooooooooo le 1 Mar 2019
Hi Walter,
Thanks for answering. However, since I was supposed to anaylize the data one by one, and the final output becomes (175x1) instead (175x90). Therefore, I need a for loop to combine them back to the same dimension of the original file.
Tao

Connectez-vous pour commenter.

Réponses (1)

Walter Roberson
Walter Roberson le 1 Mar 2019
numrow = size(A,1);
numcol = size(A,2);
B = zeros(numrow, numcol)
for column = 1 : numcol
this_column = A(:,column);
.....
this_result = ...
B(:,column) = this_result;
end

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