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

1 view (last 30 days)
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 Comments
Taoooooooooooo
Taoooooooooooo on 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

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 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

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!