Building a matrix by merging the same row vector multiple times

You are looking for the REPMAT function:

x = [1 2 2 3];
m = repmat(x,4,1);

You can also use indexing to repeat the rows:

m = x(ones(4,1),:);

or even outer-product:

m = ones(4,1)*x;

and also using BSXFUN:

m = bsxfun(@times, x, ones(4,1))

Leave a Comment