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

2 次查看(过去 30 天)
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 个评论
Taoooooooooooo
Taoooooooooooo 2019-3-1
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

请先登录,再进行评论。

回答(1 个)

Walter Roberson
Walter Roberson 2019-3-1
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

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by