Adding every loop a matrix from the right side to a matrix

I want to add after one loop a matrix to a matrix that was calculated one loop before. For example in the first loop the matrix would be 2x2 after second loop 2x4 and the next one 2x6 ...
I know that "manually" it would be i think like this
A = [1,2;3,4]
A = 2×2
1 2 3 4
B(:,1:2) = A
B = 2×2
1 2 3 4
B(:,3:4) = A
B = 2×4
1 2 1 2 3 4 3 4
But how would this look like in a loop?

 采纳的回答

A = [1,2;3,4] ;
B = repmat(A,1,2)
B = 2×4
1 2 1 2 3 4 3 4

4 个评论

Yes it works allmost. For 2 of 3 matrices it works fine but for one matrix if we take the example it not makes a 2x4 it makes a 4x4. Or like in my case it make from a 14x2 a 28x4 and not 14x4. Could it be that the entries change and repmat would not work ?
Show us what exact matrix you want to make.
Sorry the problem why it was creating a bigger matrix after a loop was because i had a mistake before repmat. Problem solved thank you for the help :)
Glad it worked for you.
Happy coding in MATLAB. :)

请先登录,再进行评论。

更多回答(1 个)

In the example below, a new 2x2 random matrix is created at each new iteration and appended to an existing matrix A.
clear,clc
A = [];
for i = 1:10
B = rand(2,2);
A = [A,B];
end
A
A = 2×20
0.3994 0.6342 0.9210 0.0792 0.5605 0.1604 0.5920 0.6461 0.9130 0.8542 0.8578 0.3106 0.6250 0.0873 0.7464 0.4444 0.7945 0.1335 0.2230 0.5452 0.6890 0.5618 0.7523 0.2968 0.8271 0.6431 0.2080 0.2957 0.9066 0.7982 0.6292 0.7462 0.0664 0.8576 0.5080 0.5076 0.3264 0.3242 0.8307 0.2477

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by