How can i create a sequence where the symbols have different probabilities?
2 次查看(过去 30 天)
显示 更早的评论
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
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
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.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!