5

我想在统计上比较两个二维分布。因此,我想使用 Peacock 测试(Kolmogorov-Smirnov 测试的 2D 模拟)。有一个名为Peacock.test的 R 包声称可以实现它。

但是这个包的文档非常稀疏,即:

这个包中提供的两个函数:peacock2 和 peacock3 是不言自明的,它们的用法也很简单。

特别是我找不到peacock()函数的输出代表什么(我猜这有点像 p 值)?有没有人测试过这个功能,他们能告诉我它是什么(这个功能是否可靠?)?

使用示例:

x <- matrix(rnorm(12, 0, 1), ncol=2)
y <-  matrix(rnorm(16, 0, 1), ncol=2)
ks <- peacock2(x, y)
ks
4

1 回答 1

4

我不知道它是否可靠,但代码看起来相当简单。

现在坏消息:基于?peacock2,函数给你的是

价值:

检验统计量的值

这意味着它没有给你 p 值。原始论文(“天文学中的二维拟合优度测试”,JA Peacock,皇家天文学会月刊,1983 年)给出了一个从蒙特卡罗模拟得出的临界值表和一个解析近似值。要从您的检验统计量中获得 p 值,您必须 (1) 将检验统计量 D 转换为 Z 统计量(第 3.5 节Z=sqrt(n1*n2/(n1+n2))*D针对双样本检验说明,前提是两个 n 值均 >10),然后建议您可以通过P(>Z)=2*exp(-2*(Z-0.5)^2).

如果您打算使用它,我绝对建议您阅读原始论文并为自己仔细检查/推导它。

于 2017-10-30T13:46:18.517 回答