How does this vector expanding work?

Good night, I'm trying to understand how a vector can expand to a matrix using a vector formed by ones. Here is the example I'm trying to understand:
xx = [1 2 3]; yy = xx(ones(3,1),:);
I don't know how the part of xx(ones(3,1),:) works, and it would be great if you could explain it to me. The result of this operations is a 3x3 matrix:
1 2 3
1 2 3
1 2 3
Thank you!

 Accepted Answer

Think about it this way:
x = [1 2;3 4];
to index the first row of this, you would use:
x(1,:)
If you wanted to index the 2nd row then the first row:
x([2 1],:)
What you're doing above is essentially:
x([1 1 1],:)

1 Comment

I've finally understood it! Thank you, it has been very useful!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!