2

指数分布 (の離散バージョン) に従って、範囲 {0,...,n-1} の整数をサンプリングする良い方法は何ですか? random.expovariate(lambd)0 から正の無限大までの実数を返します。

アップデート。より正確になるようにタイトルを変更しました。

4

3 に答える 3

1

指数分布の離散類似物は幾何分布です。これはNumPyで実装されています:

>>> import numpy as np
>>> np.random.geometric(.01, 10)
array([ 33,  45,  41, 171,  62, 119,  56,  47,  30, 197])
于 2013-05-01T11:45:16.587 に答える
-1

簡単な答えは次のとおりです。幾何分布から乱数を選択し、mod n を返します。

例: random.geometric(p)%n

P(x) = p(1-p)^x+ p(1-p)^(x+n) + p(1-p)^(x+2n) ....

= p(1-p)^x *(1+(1-p)^n +(1-p)^(2n) ... )

2 番目の部分は、指定された p と n の定数であることに注意してください。最初の部分は幾何学的です。

于 2013-05-01T13:28:01.000 に答える