using Repmat function , obtain repeated specific values

z =[ 93 691 275 142 3 12]
n=6
for i=1:n
a=[1:n]'
b(i)=repmat(a(i),z(i),1)
end
I want to obtain repeated values of a in the matrix b but a(1) should be repeated in z(1) times, and a(2) should be repeated z(2) times. Above code just gived this:
b =
6
6
6
6
6
6
6
6
6
6
6
6
>>

 Accepted Answer

Use repelem.
a = [1 2 3 4]
a = 1×4
1 2 3 4
b = a.^2
b = 1×4
1 4 9 16
c = repelem(b, a)
c = 1×10
1 4 4 9 9 9 16 16 16 16

More Answers (0)

Categories

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!