对数正态随机数以高值为中心

Luk*_*ser 3 random numpy scipy

我试图使用numpy/scipy从对数正态分布创建随机数.

平均值为2000,西格玛为800.

如果我使用numpy.random.lognormal(mean = 2000,sigma = 800,size = 10000)创建我的随机值,我得到的是非常高或inf数字.

有办法解决这个问题吗?

War*_*ser 6

注意:meansigma参数对应于分发日志的lognormal分布; 分布的实际算术平均值是exp(mean + sigma**2/2),infmean=2000和时,它在标准双精度浮点数时计算sigma=800.

http://docs.scipy.org/doc/numpy/reference/generated/numpy.random.lognormal.html#numpy.random.lognormalhttp://en.wikipedia.org/wiki/Log-normal_distribution 更多细节.

  • 维基百科文章有转换(http://en.wikipedia.org/wiki/Log-normal_distribution#Arithmetic_moments).另见:www.stanford.edu/~bkravitz/research/lognormal.pdf(等式(3) - (6)给出转换). (2认同)