乐趣区

关于算法:R语言中的Wilcoxon符号秩检验与配对学生t检验

原文链接:http://tecdat.cn/?p=3172


在这篇文章中,咱们将摸索比拟两组依赖(即配对)定量数据的测验:Wilcoxon 符号秩测验和配对学生 t 测验。这些测验之间的要害区别在于 Wilcoxon 的测验是非参数检验,而 t 测验是参数检验。在下文中,咱们将探讨这种差别的结果。

睡眠数据集

咱们来思考睡眠数据集。数据集通过提供服用药物后睡眠工夫与基线相比的变动来比照两种催眠药物(即安眠药)的成果:

_extra_示意与基线测量相比睡眠中的减少 / 缩小(正 / 负值),_组_示意药物,_ID_示意患者 ID。为了更分明,我将_组_重命名为_药物_:

##    extra group ID
## 1    0.7     1  1
## 2   -1.6     1  2
## 3   -0.2     1  3
## 4   -1.2     1  4
## 5   -0.1     1  5
## 6    3.4     1  6
## 7    3.7     1  7
## 8    0.8     1  8
## 9    0.0     1  9
## 10   2.0     1 10
## 11   1.9     2  1
## 12   0.8     2  2
## 13   1.1     2  3
## 14   0.1     2  4
## 15  -0.1     2  5
## 16   4.4     2  6
## 17   5.5     2  7
## 18   1.6     2  8
## 19   4.6     2  9
## 20   3.4     2 10

留神,睡眠数据集蕴含每个患者的两个测量值。因而,它适宜于展现配对测验,例如咱们正在解决的测验。

咱们测验的是什么?

假如咱们在一家制药公司工作,这些是刚从临床试验中取得的数据。当初,咱们必须决定你应该推出哪两种药物用于市场。抉择药物的正当办法是确定体现更好的药物。

为了直观理解这两种药物的有效性,让咱们绘制相应的值:

该图显示药物 1 的睡眠工夫的中值减少靠近 0,而药物 2 的中值减少靠近 2 小时。因而,依据这些数据,仿佛药物 2 比药物 1 更无效。然而,咱们仍须要确定咱们的发现是否具备统计学意义。

零假如

测验的零假如是,两种药物之间的额定睡眠工夫没有任何差异。因为咱们想晓得药物 2 是否优于药物 1,所以咱们不须要双尾测验(测验任何一种药物是否具备优越性能),而是须要单尾检验。因而,备选假如是,药物 2 比药物 1 更优。

 Wilcoxon 符号秩测验

 因为测验统计量是基于排名而不是测量值自身,因而 Wilcoxon 符号秩测验能够被认为是测验两组之间中值变动。

要在 R 中执行测验,咱们能够应用该 wilcox.test。然而,咱们必须明确设置_配对_参数,以表明咱们正在解决匹配的察看。要指定单尾检验,咱们将_代替_参数设置为_更大_。以这种形式,测验的代替计划是药物 2 是否与睡眠持续时间减少相关联而不是药物 1。

wilcox(x, y, paired = TRUE, 
                   alternative = "greater"

 正告

在取得后果之前,咱们应该考察执行检验所产生的两个正告。

正告 1:关系

第一个正告产生的起因是,该测试对成对的额定数值的差别进行排名。如果两对有雷同的差别,在排名时就会呈现并列。咱们能够通过计算配对之间的差别来验证这一点

x - y

##  \[1\] 1.2 2.4 1.3 1.3 0.0 1.0 1.8 0.8 4.6 1.4

并发现第 3 和第 4 对都有雷同的差值 1.3。为什么并列是一个问题?调配给并列关系的等级是基于它们所逾越的等级的平均值。因而,如果有许多并列,这就升高了测试统计的表现力,使 Wilcoxon 测试不适合。因为咱们这里只有一个并列,这不是一个问题。

正告 2:零值

第二个正告波及差别为 0 的对。在睡眠数据集中,来自第 5 个患者的状况就是这种状况(见上文)。为什么零是个问题?请记住,零假如是对的差别以 0 为核心。然而,察看值恰好为 0 的差别并不能为咱们提供任何回绝零的信息。因而,在计算测验统计量时抛弃这些配对。如果许多配对的状况如此,则测验的统计成果将大幅降落。同样,这不是问题,因为只存在一个零值。

调查结果

测验的次要后果是它的 p 值,能够通过以下形式取得:

res$p.value

## \[1\] 0.004545349

因为 p 值小于 5% 的显著性程度,这意味着咱们能够回绝无效假设。因而,咱们偏向于承受备选假如,即药物 2 优于药物 1。

配对学生的 t 测验

配对 Student’s t 测验是对两组配对定量测量方法的参数检验。这里,参数意味着 t 测验假如样本之间的均匀差别是正态分布的。测验依赖于确定两组的测量值的均匀差别,X¯d 大于 μd,μd 通常设置为 0 查找是否存在任何差别。

在 R 中,咱们能够用 t.test 函数进行配对 t 测验。请留神,t.test 假设人口变异是不相等的。在这种状况下,该测验也被称为韦尔奇的 t 测验。要取得假设种群方差相等的原始 t 测验,咱们能够间接将 equal.var 参数设置为 TRUE。在这里,咱们将只应用默认设置。

print(t.result$p.value)
## \[1\] 0.001416

同样,P 值小于 0.05。因而,咱们偏向于承受另一个假如:药物 2 比药物 1 在均匀睡眠工夫上有更大的增长。

查看学生 t 测验的假如

t 测验要求样本均值是正态分布。依据核心极限定理,在有足够数量的样本时,群体中的样本均值靠近正态分布。因而,只有有足够数量的样本,即便对于非正态测量,也能满足 t 测验的假如。因为睡眠数据只蕴含 10 个成对的测量值,应该有理由放心。因而,咱们应该查看测量值之间的差别是否为正态分布,以验证 t 测验是否无效。

ggplot(diff.df, aes(x = diff))
   

看一下直方图,数据仿佛相当平均,而不是正态分布。为了更认真地察看,咱们用 Q - Q 图将差别与正态分布的期望值进行比拟。

 qqp(diff.df$diff)

QQ 图显示,除了重尾之外,差别相当合乎正态模型。由此,咱们能够得出结论,t 测验的假如失去了充沛的满足。不过,咱们还是对 t 测验是否是这些数据最合适的抉择感到不确定。

总结:Wilcoxon 符号秩测验与配对学生 t 测验

在这项剖析中,Wilcoxon 符号秩测验和配对学生 t 测验导致回绝零假如。但总的来说,哪种测验更适合?答案是,这取决于几个规范:

  • 假如: 学生 t 测验是比拟平均值的测验,而 Wilcoxon 测验是测验数据的排序。例如,如果你在剖析有许多离群值的数据,如集体财产(多数亿万富翁会极大地影响后果),Wilcoxon 测验可能更适合。
  • 解释: 尽管也能够为 Wilcoxon 测验计算置信区间,但在 t 测验中争执平均数的置信区间可能比 Wilcoxon 测验的假说更天然。
  • 假如的实现:对于小规模的样本,学生 t 测验的假如可能无奈满足。在这种状况下,抉择一个非参数检验往往是比拟平安的。然而,如果满足 t 测验的假如,它的统计能力比 Wilcoxon 测验大。

因为睡眠数据集的样本量较小,对于这些数据,我更偏向于采纳 Wilcoxon 的测验。

你会用哪种测验?

退出移动版