作者jmren (學生)
看板MATLAB
標題Re: [討論] 照自訂的機率函數產生隨機數值
時間Wed Nov 9 09:10:14 2011
我想到的解法是:
1. 假設你0-10之間數值間格是0.00001,然後你依照你的機率函數去累加每個區間的機率
例如原先0的機率是0.01%, 0.00001的機率是0.02%, 0.00002的機率是0.05%,...
那麼0的累加機率是0.01%, 0-0.00001的累加是0.03%, 0-0.00002的累加是0.08%, ...
最後0-10的累加機率則是1
2. 用rand(uniform distribution)產生0-1之間的數值a
3. 數值a所對應到的累加機率其所代表的區間就是你要的啦
或許有更簡單的作法,歡迎有興趣的人一起討論:)
※ 引述《NanFish (厭倦)》之銘言:
: 爬文爬到了 randsrc的指令
: 但它好像是用在給定離散的數值出現的機率
: 若今天我有個自定機率函數
: 想在0-10之間照我自訂的機率函數隨機產生數值(有小數點的) 該怎麼實現呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.114.74.20