给定观察到的计数 Python 从泊松分布中抽样随机率

Sampling random rates from poisson distribution given observed counts with Python

我想根据泊松分布生成与观察到的计数一致的比率。

用 scipy 做相反的事情很容易。我可以在给定固定比率的情况下进行计数

counts = scipy.stats.poisson.rvs(mu)

但我找不到将计数作为参数返回随机率的简单方法。

scipy.stats.poisson.rvs(mu) 的绘图计数是从泊松分布中抽样的。如果您有一组来自单个泊松分布的样本(计数)并且您想要一个比率,那么您正在尝试估计泊松分布。要估计泊松分布,请计算平均计数:λ。那么分布为:

P(k) = λk e / k!

然后可以使用该分布来计算在一个区间内观察到某些计数 (k) 的概率。

如果相反,假设每个计数都来自 单独的 泊松分布 - 那么每个计数只有一个样本,分布的最佳估计来自样本作为平均值 λ.

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

原来我真正要找的是 Gamma 分布,它具有相同的函数形式,但是是连续的。为了完成我试图用 scipy:

做的事情
mu = scipy.stats.gamma.rvs(counts+1)

counts+1只是因为权力在分布中的定义方式

Scipy Docs