Repeating rows of matrix in MATLAB

Viewed 1239

I have a question that is related to this post: "Cloning" row or column vectors. I tried to work around the answers posted there, yet failed to apply them to my problem.


In my case, I'd like to "clone" each row row of a matrix by converting a matrix like

A = [1,2; 3, 4; 5, 6]

into the matrix

B = [1, 2
     1, 2
     3, 4
     3, 4
     5, 6
     5, 6]

by repeating each row of A a number of times.


So far, I was able to work with repmat for a single row like

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

>> B = [1, 2
        1, 2]

I was trying to build a loop using that formula, in order to obtain the matrix wanted. The loop looked like

T = 3; N = 2;
for t = 1:T
    for I = 1:N
      B = repmat(C, 21, 1)
    end
end

Has anyone an idea how to correctly write the loop, or a better way to do this?

1 Answers
Related