how chose a number with unequal probability?

2 ビュー (過去 30 日間)
Pappu Murthy
Pappu Murthy 2017 年 1 月 23 日
編集済み: Matt J 2017 年 1 月 23 日
My question is if I use randi function and say between 1 : 100, it chooses randomly a number giving equal probability to all numbers in between. Suppose I want to chose a number between 1 and 100 but give different probability for each number say proportional to the number itself.. so that 1 has a much lower probability to pick compared to 100 for e.g. how would I do that with randi function? Is that possible at all? Thanks in advance for any help.

採用された回答

Steven Lord
Steven Lord 2017 年 1 月 23 日
Use the randsample function from Statistics and Machine Learning Toolbox with a vector of weights.

その他の回答 (1 件)

Matt J
Matt J 2017 年 1 月 23 日
編集済み: Matt J 2017 年 1 月 23 日
delta=1/(100*101/2);
probs=[0,cumsum((1:100)*delta)];
[~,~,theresult]=histcounts(rand,probs);

Community Treasure Hunt

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

Start Hunting!

Translated by