等效性检验的方差分析

机器算法验证 r 重复测量 线性模型 事后 等价
2022-03-21 16:24:33

如何执行统计等价的方差分析?

我阅读了关于等效性的两个单边检验 (TOST),但是(我认为)对于本研究设计,不可能执行经典的 t 检验,因此需要重复测量方差分析。

该研究设计是一种常见的治疗前-对照设计:有两个不同的组(对照/治疗),并且在基线和随访(MP1 / MP2)处依赖两个测量点。研究问题是,如果治疗是平等的。

我的想法是,方差分析分析了组之间的差异。是否有等效的事后处理,特别是在 R 中?


编辑

感谢 D_Williams,我阅读了using-lsmeans插图和lsmeans参考手册。有一个函数叫做测试。使用此功能,您可以进行等效/非劣效性或非优势性测试。现在我遇到了一个新问题。由于研究设计,我需要重复测量的线性回归。所以这是一个示例数据集:

 dataset <- data.frame (ID    = rep(1:16),
                  GROUP = factor(rep(c("A","B"),8)),
                   MP1   = c(15,12,20,17,28,24,17,10,14,10,25,23,9,18,19,20),
                   MP2   = c(12,9,19,10,20,15,12,5,12,10,22,15,8,17,10,19),
                   )

线性回归应该是:

data.lm <- lm (MP2 - MP1 ~ GROUP, data=dataset)

据我理解这个答案是正确的,案例 2b 对我来说是正确的。因为有两个定量变量和一个二分变量。

之后我运行这些命令:

library("lme4", "lsmeans", "estimablity")
data.lsm <- lsmeans(data.lm, "GROUP")
test(data.lsm, null = log(100), delta = 0.20, side="equivalence")

Delta 是等价边际或相似范围。但我不确定 log(100) 是什么。

我的问题是:

  1. 这种方法对吗?

  2. 老实说:我真的不明白最后的步骤。有人有一些代码示例来研究它们吗?

2个回答

由于您只有两个组,因此无需执行 ANOVA。您可以通过简单地为两个样本问题(例如 x 和 y)建立置信区间 (CI) 来执行 TOST 程序,其中 x = MP2-MP1 在对照组中,y = MP2-MP1 在治疗组中。您需要注意统计检验的常用假设:正态性、异方差性等。但是,一旦有了 CI,您就可以查看它是否包含在 +-delta 区域内。在 R 中,您可以执行以下操作:

set.seed(12)
x = rnorm(100)
y = rnorm(70)

# for two sample t-test with equal variances
tt <- t.test(x, y, var.equal = TRUE, conf.level = 0.90)

# for Welch two sample t-test
tt.uneq <- t.test(x, y, var.equal = FALSE, conf.level = 0.90)

# for two sample Wilcoxon test
wcox <- wilcox.test(x,y, conf.int = TRUE, conf.level = 0.90)

delta <- 0.32

library(plotrix)
plotCI(x = 1, y=diff(rev(tt$estimate)), ui = tt$conf.int[2], li = tt$conf.int[1],
       xlim=c(0,4), ylab = "Confidence intervals", ylim = c(-0.6, 0.6),
       xlab ="Methods")
plotCI(x = 2, y=diff(rev(tt.uneq$estimate)), ui = tt.uneq$conf.int[2],
       li = tt.uneq$conf.int[1], add=TRUE, col=2)
plotCI(x = 3, y=wcox$estimate, ui = wcox$conf.int[2],
       li = wcox$conf.int[1], add=TRUE, col=3)
abline(h = c(-delta, delta), lwd = 2, lty = 2)

在此处输入图像描述

在这里,为了说明我正在考虑三种类型的测试的想法,但文献中还有很多其他类型的测试。希望这可以帮助。

通常等效性测试非常限于简单的模型。然而,我最近了解到,r 中的 lsmeans 包对比 t 检验更复杂的模型进行等效测试。我没用过,但我用过 lsmeans,它是一个非常灵活的工具。这可能有效,但您必须查看包装插图以了解详细信息,以确保看到这里

截至 2022 年,emmeans包(继任者lmmeans可用于线性模型的等价测试;小插图信息在此处