我对 Wilcoxon 签名等级测试的结果有疑问:
我的数据包括使用治疗的两组(配对)试验。结果以%计分。小组由131人组成。
当我在 R 中运行测试时,得到以下结果:
wilcox.test(no.treatment, with.treatment, paired=T)
# Wilcoxon signed rank test with continuity correction
# data: no.treatment and with.treatment V = 3832, p-value = 0.7958
# alternative hypothesis: true location shift is not equal to 0
Run Code Online (Sandbox Code Playgroud)
我想知道这个V值是什么意思。我在某处读到它与正分数(?)的数量有关,但我想知道它是否可以告诉我有关数据和解释的任何信息?
在回答你的问题之前,我先介绍一下背景。
Wilcoxon 符号秩和检验比较了同一N个人(此处为 131)之间的两个值,例如,在两个时间点测量了 131 个人的血液值。测试的目的是查看血液值是否发生了变化。
V你得到的-statistic 没有直接的解释。该值基于您两个组中个人之间的成对差异。它是一个变量的值,应该遵循一定的概率分布。直观地说,您可以说 的值V越大,您采样的两组之间的差异就越大。
在假设检验中,您(好吧,wilcox.test函数)将计算该变量的值 ( V) 等于 3832 或更大
的概率prob('observing a value of 3832 or larger, when the groups are actually the same')
如果两组之间确实没有差异,则 的值V将“接近于零”。V您看到的值是否“接近于零”取决于概率分布。这个变量的概率分布并不简单,但幸运的是这并不重要,因为wilcoxon知道分布并为你计算概率 (0.7958)。
您的小组没有显着差异,V也没有明确的解释。
该函数产生的Vwilcox.test()统计量可以计算R如下:
# Create random data between -0.5 and 0.5
da_ta <- runif(1e3, min=-0.5, max=0.5)
# Perform Wilcoxon test using function wilcox.test()
wilcox.test(da_ta)
# Calculate the V statistic produced by wilcox.test()
sum(rank(abs(da_ta))[da_ta > 0])
Run Code Online (Sandbox Code Playgroud)
用户MrFlick在回答这个问题时提供了上述答案:
How to get same results of Wilcoxon signrank test in R and SAS。
Wilcoxon W统计量与V统计量不同,可以按R如下方式计算:
# Calculate the Wilcoxon W statistic
sum(sign(da_ta) * rank(abs(da_ta)))
Run Code Online (Sandbox Code Playgroud)
上述统计量可以与 Wilcoxon 概率分布进行比较以获得 p 值。Wilcoxon 分布没有简单的公式,但可以使用蒙特卡罗模拟来模拟。
| 归档时间: |
|
| 查看次数: |
8966 次 |
| 最近记录: |