R中的Wilcoxon-Mann-Whitney临界值

机器算法验证 r 假设检验 非参数 wilcoxon-mann-whitney 检验
2022-02-28 15:39:39

我注意到,当我尝试使用 R 找到 Mann-Whitney U 的临界值时,这些值始终是 1+临界值。例如,对于,(双尾)临界值为 8,而对于,(双尾) ) 临界值为 22(检查表格),但是:α=.05,n=10,m=5α=.05,n=12,m=8

> qwilcox(.05/2,10,5)
[1] 9
> qwilcox(.05/2,12,8)
[1] 23

当然我没有考虑什么,但是......谁能解释我为什么?

2个回答

我认为这里的答案可能是您在比较苹果和橙子。

表示 Mann-Whitney统计量的 cdf。的分位数函数根据定义,因此 F(x)UqwilcoxQ(α)U

Q(α)=inf{xN:F(x)α},α(0,1).

因为U是离散的,所以通常没有x使得F(x)=α,所以通常是F(Q(α))>α

现在,考虑测试的临界值C(α)在这种情况下,您需要F(C(α))α,否则您将有一个I 类错误率大于标称错误率的测试。这通常被认为是不可取的;保守的测试往往是首选。因此,

C(α)=sup{xN:F(x)α},α(0,1).
除非有一个x满足F(x)=α,否则我们有C(α)=Q(α)1

差异的原因是它qwilcox被设计为计算分位数而不是临界值!

请记住,秩和检验统计量是离散的,因此您需要使用一个临界值,使得尾概率为到指定的对于某些等于 alpha 的样本量,无法实现,这就是我对为什么需要 +1 的猜测。α