How can I replicate matrix

1 view (last 30 days)
I have p(x) which has 25 values. I want 640 values in such away that each of p(x)'s are replicated 25 times and the remaining 15(25x25=625) should be added to the last p. I tried this way but not ok
for ii = 1 :length(p);
p2=repmat(p(i) , [1 25]);
end;
thanks for your help.
btw, is there any way of adding the remaining 15 values proportionally.
  2 Comments
José-Luis
José-Luis on 2 Dec 2012
"the remaining 15(25x25=625) should be added to the last p" What does that mean?
Ede gerlderlands
Ede gerlderlands on 2 Dec 2012
I want 640 values . When i REPLICATE i will have 625 values(25x25) and there still remains 640-625=15. This 15 values should be obtained from the last value, i.e.,p(25)should be replicated 40 times.

Sign in to comment.

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 2 Dec 2012
Edited: Azzi Abdelmalek on 2 Dec 2012
p=1:25
a=repmat(p,25,1)
out=[a(:);ones(15,1)*p(end)]

More Answers (0)

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!