在进行线性回归时,可以对数据点进行各种影响检查(Cook 距离、杠杆、dffits、dfbetas、covratio)。这些中的每一个都是文献提供的,具有一些截止水平,即库克的 D > 4/n。但是,我关心一种特殊情况:当单个数据点在神奇的 p=0.05 值下驱动显着性时。我在许多生命科学回归图中看到了这一点。不仅单个数据点的遗漏会将回归从“显着”恢复为“无关紧要”,而且单个值的微小变化也可以做到这一点。考虑以下:
## Create significant model
set.seed(125)
a <- 1:20
b <- 5 + 0.08 * a + rnorm(20, 0, 1)
LM <- lm(b ~ a)
summary(LM)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 5.01645 0.48052 10.44 4.59e-09 ***
a 0.09667 0.04011 2.41 0.0269 *
Residual standard error: 1.034 on 18 degrees of freedom
Multiple R-squared: 0.2439, Adjusted R-squared: 0.2019
F-statistic: 5.807 on 1 and 18 DF, p-value: 0.02688
如果我们简单地交换从它的值 (6.013) 到 6.7,即仅移动 20 中单个值的 10%,我们得到:
b2 <- b
b2[1] <- 6.7
LM2 <- lm(b2 ~ a)
summary(LM2)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 5.15379 0.50033 10.30 5.65e-09 ***
a 0.08686 0.04177 2.08 0.0521 .
Residual standard error: 1.077 on 18 degrees of freedom
Multiple R-squared: 0.1937, Adjusted R-squared: 0.1489
F-statistic: 4.325 on 1 and 18 DF, p-value: 0.05213
现在,倾向于严格遵守 p=0.05 阈值的研究人员可能会得出由单个数据点驱动的结论。恕我直言,这表明数据结构非常不稳定。此外,所有经典影响测量都无法将这个数据点 #1 识别为“异常值”:
> influence.measures(LM2)
Influence measures of
lm(formula = b2 ~ a) :
dfb.1_ dfb.a dffit cov.r cook.d hat inf
1 0.74440 -0.63695 0.7451 1.053 2.57e-01 0.1857
可以(通过优化)为每个值找到完全回归保持显着性的“信任区域”(蓝线)。通过以 pt(slope/se(slope), n-2) > 0.05 的方式影响斜率或其标准误差,将任何值(黑点)移到任何这些区域之外都会恢复显着性。
问题是:这是有趣的东西吗?还是我错过了一些明显且相当无聊的事实?