gpt4 book ai didi

r - coin::wilcox_test 与 R 中的 wilcox.test

转载 作者:行者123 更新时间:2023-12-04 10:56:36 27 4
gpt4 key购买 nike

在试图找出哪个更好用时,我遇到了两个问题。

1) wilcox.test 给出的 W 统计量与 coin::wilcox_test 的不同。这是我的输出:

wilcox_test:

Exact Wilcoxon Mann-Whitney Rank Sum Test

data: data$variableX by data$group (yes, no)
Z = -0.7636, p-value = 0.4489
alternative hypothesis: true mu is not equal to 0

威尔考克斯测试:
Wilcoxon rank sum test with continuity correction

data: data$variable by data$group
W = 677.5, p-value = 0.448
alternative hypothesis: true location shift is not equal to 0

我知道 W 实际上有两个值,通常报告较小的值。当 wilcox.test 与逗号一起使用而不是“~”时,我可以获得另一个值,但结果为 W = 834.5。据我了解,coin::statistic() 可以使用(“线性”、“标准化”和“测试”)返回三种不同的统计数据,其中“线性”是正常的 W,而“标准化”只是将 W 转换为z 分数。这些都不符合我从 wilcox.test 得到的 W(线性 = 1055.5,标准化 = 0.7636288,测试 = -0.7636288)。任何想法发生了什么?

2) 我喜欢 wilcox_test 中“distribution”和“ties.method”的选项,但似乎你不能像 wilcox.test 那样应用连续性修正。我对吗?

最佳答案

我在尝试申请时遇到了同样的问题 Wendt使用 coin 计算效果大小的公式包,并由于 wilcox_test() 输出的线性统计量而获得异常 r 值。未调整。

已经给出了很好的解释here ,因此我将简单地说明如何使用 wilcox_test() 获得调整后的 U 统计量。功能。让我们使用以下数据框:

d <- data.frame( x = c(rnorm(n = 60, mean = 10, sd = 5), rnorm(n = 30, mean = 16, sd = 5)), 
g = c(rep("a",times = 60), rep("b",times = 30)) )

我们可以使用 wilcox.test() 执行相同的测试和 wilcox_test() :
 w1 <- wilcox.test( formula = x ~ g, data = d ) 
w2 <- wilcox_test( formula = x ~ g, data = d )

这将输出两个不同的统计数据:
> w1$statistic
W
321

> w2@statistic@linearstatistic
[1] 2151

这些值确实完全不同(尽管测试是等效的)。

获得与 wilcox.test()相同的U统计量,你需要减去 wilcox_test()的输出统计量由 的行列总和的最小值表示引用 sample 可以拿,就是 n_1(n_1+1)/2 .

这两个命令都采用分组变量因子中的第一级 g作为引用(默认情况下按字母顺序排列)。

然后,您可以计算引用样本可能的最小秩和:
n1  <- table(w2@statistic@x)[1]


w2@statistic@linearstatistic-  n1*(n1+1)/2 == w1$statistic

应该返回 TRUE
瞧。

关于r - coin::wilcox_test 与 R 中的 wilcox.test,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23450221/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com