How can i create a sequence where the symbols have different probabilities?

2 ビュー (過去 30 日間)
Gn Gnk
Gn Gnk 2020 年 7 月 9 日
編集済み: Apoorv Singh 2020 年 7 月 9 日
Hello ,
I have 4 symbols 0,1,2,3 . How can i create a sequence with these symbols where every symbol should have each own probabilty .For example i want the symbols 1,2 to appear with probability q , but in the other hand the symbols 1,4 to appear with probability (1-q)/2.
In my last excersice i was asked to create a sequence where these symbols have the same probability 1/4 so i wrote the code below:
C = floor(rand(1,n)*4);
But i am little confused about this issue .Any help would be valuable.
  1 件のコメント
Walter Roberson
Walter Roberson 2020 年 7 月 9 日
hint:
probabilities 0.1, 0.23, 0.6, 0.07
random number < 0.1 is the first symbol
random number between 0.1 and 0.1+0.23 is the second symbol
random number between 0.1+0.23 and 0.1+0.23+0.6 is the third symbol...

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

回答 (1 件)

Apoorv Singh
Apoorv Singh 2020 年 7 月 9 日
編集済み: Apoorv Singh 2020 年 7 月 9 日

Walter has suggested a nice method. You basically partition the range [0:1] into partitions proportional to the probabilities. As calling rand outputs a decimal in the range [0:1] with equal probability, your problem will be solved.

カテゴリ

Help Center および File ExchangeSymbolic Math Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by