scipy.stats.

poisson_means_test#

scipy.stats.poisson_means_test(k1, n1, k2, n2, *, diff=0, alternative='two-sided')[源代码]#

执行泊松均值检验,也称为“E-检验”。

这是一个检验两个泊松分布均值之差为diff的零假设的检验。样本以在大小为n1n2的测量区间(例如时间、空间、观测次数)内观测到的事件数k1k2的形式提供。

参数:
k1int

从分布 1 观测到的事件数。

n1float

来自分布 1 的样本大小。

k2int

从分布 2 观测到的事件数。

n2float

来自分布 2 的样本大小。

difffloat, 默认值=0

样本背后潜在分布的均值之间的假设差异。

alternative{‘two-sided’, ‘less’, ‘greater’}, 可选

定义备择假设。以下选项可用(默认为“two-sided”)

  • ‘two-sided’:分布均值之间的差异不等于diff

  • ‘less’:分布均值之间的差异小于diff

  • ‘greater’:分布均值之间的差异大于diff

返回:
statisticfloat

检验统计量(参见 [1] 方程式 3.3)。

pvaluefloat

在零假设下,获得如此极端的检验统计量值的概率。

注释

\[X_1 \sim \mbox{Poisson}(\mathtt{n1}\lambda_1)\]

是一个独立于

\[X_2 \sim \mbox{Poisson}(\mathtt{n2}\lambda_2)\]

的随机变量,并设 k1k2 分别为 \(X_1\)\(X_2\) 的观测值。则 poisson_means_test 使用来自大小分别为 n1n2 的样本的观测事件数 k1k2,来检验零假设:

\[H_0: \lambda_1 - \lambda_2 = \mathtt{diff}\]

E-检验的一个优点是它对于小样本量具有良好的功效,这可以降低抽样成本 [1]。它已被评估并确定比可比的 C-检验(有时称为泊松精确检验)更强大。

参考文献

[1] (1,2)

Krishnamoorthy, K., & Thomson, J. (2004). A more powerful test for comparing two Poisson means. Journal of Statistical Planning and Inference, 119(1), 23-35.

[2]

Przyborowski, J., & Wilenski, H. (1940). Homogeneity of results in testing samples from Poisson series: With an application to testing clover seed for dodder. Biometrika, 31(3/4), 313-323.

示例

假设一位园丁希望测试他们从种子经销商处购买的一袋三叶草种子中菟丝子(杂草)种子的数量。先前已确定三叶草中的菟丝子种子数量服从泊松分布。

在运送给园丁之前,从麻袋中抽取 100 克样本。对样本进行分析,发现不包含菟丝子种子;也就是说,k1 为 0。然而,到达后,园丁从麻袋中抽取另一个 100 克样本。这次,在样本中发现了三个菟丝子种子;也就是说,k2 为 3。园丁想知道差异是否显著而不是由于偶然性造成的。零假设是两个样本之间的差异仅仅是由于偶然性,或者说 \(\lambda_1 - \lambda_2 = \mathtt{diff}\),其中 \(\mathtt{diff} = 0\)。备择假设是差异不是由于偶然性造成的,或者说 \(\lambda_1 - \lambda_2 \ne 0\)。园丁选择 5% 的显著性水平来拒绝零假设,从而支持备择假设 [2]

>>> import scipy.stats as stats
>>> res = stats.poisson_means_test(0, 100, 3, 100)
>>> res.statistic, res.pvalue
(-1.7320508075688772, 0.08837900929018157)

p 值为 .088,表明在零假设下观察到检验统计量值的几率接近 9%。这超过了 5%,因此园丁不拒绝零假设,因为在此水平上差异不能被认为是显著的。