Created random sequence based on predefined vector

1 回表示 (過去 30 日間)
luca
luca 2019 年 9 月 12 日
コメント済み: madhan ravi 2019 年 9 月 12 日
Given a vector
SP = [1 2 4 5 8 11 13 14 15 16 18 19 20];
I want to create random sequence based on the vector
Y = [4 24 35 8 9 20 42 40 12 13 49 22 32];
It means that in the random sequnce I want element one repeated 4 times, element 2 repeated 24 times, element 4 repeated 35 times, element 5 repeated 8 times, element 8 repeated 9 times and so on.
Hence, the length of the final sequence will be equal to the cumulative sum of Y
4 + 24 + 35 + 8 + 9 + 20 + 42 + 40 + 12 + 13 + 49 + 22 + 32 = 310

採用された回答

madhan ravi
madhan ravi 2019 年 9 月 12 日
編集済み: madhan ravi 2019 年 9 月 12 日
v = repelem(SP,Y);
W = v(randperm(numel(v))) % numel(W)
  2 件のコメント
luca
luca 2019 年 9 月 12 日
May you kindly explain how it works?
madhan ravi
madhan ravi 2019 年 9 月 12 日
help repelem
help randperm

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

製品


リリース

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by