Filling one vector with elements of another

2 views (last 30 days)
My problem is I have two vectors,
one called 'Ua' of size (253,1)
and the other is called just 'vector' and is currently filled with zeros and is of size (4048,1).
What I want to do is fill rows 1:16 of 'vector' with Ua(1,1), fill rows 17:32 of 'vector' with Ua(2,1) etc. all the way up to filling rows 4032:4048 of vector with Ua(253,1).
What Ive tried to do, and does not work, is a really simple for loop as follows:
for i=1:253 vector(1:1:16:4048,1)=Ua(i,1); end
Obvioulsy this does not work and I'm struggling to figure out how to do this quite simple problem.
Can anyone offer any solutions?

Accepted Answer

Jan on 16 Aug 2013
Edited: Jan on 16 Aug 2013
vector = repmat(Ua', [16, 1]);
vector = vector(:);
  1 Comment
Rory on 16 Aug 2013
Thankyou for quick reply. I thought there would be an easy solution.....

Sign in to comment.

More Answers (0)


Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!