2017-04-05 4 views
-3

データ - データ解析 - 乱数生成 - 離散分布を呼び出すことなく、スプレッドシート内の離散分布に基づいて乱数を生成する関数を作成する方法を示します。Excelの離散乱数生成器

+0

はSO Q&Aサイトである、それはすべてのものを披露する場所ではありませんあなたが必要なだけの値を生成する機能「離散」を使用し、F9によってそれらをリフレッシュすることができます開発しました。 – CallumDA

答えて

0

このタイプの配布でExcelのRAND関数に基づいて解決策が見つからなかったので、次の関数でこの問題を解決する必要があります。

Public Function Discrete(value As Variant, prob As Variant) 
Dim i As Integer 
Dim cumProb As Single 
Dim uniform As Single 
Randomize 
Application.Volatile 
uniform = Rnd 
cumProb = prob(1) 
i = 1 
Do Until cumProb > uniform 
i = i + 1 
cumProb = cumProb + prob(i) 
Loop 
Discrete = value(i) 
End Function 

今、あなたは

enter image description here