python - 如何从泊松分布中抽取随机样本?
问题描述
我有许多X
整数(非常大)和一个概率 p,我想用它从泊松分布中抽取一个样本s
(一个数字) 。X
例如,如果X = 10^8
和p=0.05
,我希望 s 是我们得到的正面数。
我可以使用 random.binomial 轻松做到这一点:
s=np.random.binomial(n=X, p=p)
如何使用相同的想法random.poisson
?
解决方案
只需乘以p
和X
:
np.random.poisson(10**8 * 0.05)
获得超过 10**8 的概率在数值上为零。
@pjs 教授强调,我们正在将概率和数字组合成一个速率,这是泊松过程的参数。
进一步值得一提的是,对于如此大的数字,您会发现二项式和泊松的 pmf 彼此非常相似,并且(使用概率函数或工程师称之为“cdf”)与高斯非常相似。
推荐阅读
- wordpress - 如何从 WordPress 后端父页面 upload.php 中删除子菜单?
- python - 如何从硒元素屏幕截图中删除不需要的视觉元素
- php - 使用 php 解析标签名称
- html - 如何在引导程序中居中元素?
- ruby-on-rails - 用户#index 中的 NoMethodError 未定义方法 `profile' 用于 nil:NilClass
- python - Django runserver 无法使用 ModuleNotFoundError: No module named 'test' 错误
- css - 我在 Sass 中收到编译错误 - Undefined variab;e: "$i"
- python - 使用 socketio python 库和 liighhttpd 运行 wsgi 应用程序
- r - 如何根据列匹配值?
- javascript - 匹配被字符包围的单词,但不匹配这些单词之间的单词