using Repmat function , obtain repeated specific values

2 views (last 30 days)
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

Steven Lord
Steven Lord on 12 May 2022
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 Matrices and Arrays 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!