绘制随机数 returns 只有整数

Drawing random numbers returns only integers

我可能遗漏了关于统计或 numpy/scipy 的重要观点。 我想生成具有泊松统计的随机数,其期望值为 a decimal less than 1,例如 lambda = 0.6。 当我将其 pythonize 时:

>>> from scipy.stats import poisson
>>> import numpy as np
>>> lambda = 0.6
>>> poisson.rvs(lambda, size=10)
>>> print r
[2 2 0 0 0 2 1 0 0 2 ]

正在尝试

>>> r = np.real(poisson.rvs(lambda, size=10))

给出相同的结果。

为什么 0 和 1 之间没有小数?

泊松分布是 discrete probability distribution,这意味着您只能得到整数变量,而不是小数。

注意:这并不意味着与特定变量相关的概率P是整数,可以是小数,只是各个变量本身必须是整数。

泊松不是连续概率分布,因此这是预期行为

http://en.wikipedia.org/wiki/Poisson_distribution

另外不要调用你的变量lambda,这是一个重要的Python运算符