仅恢复显着性的线性回归中的异常值

机器算法验证 回归 异常值 线性的 厨师距离
2022-04-12 11:10:45

在进行线性回归时,可以对数据点进行各种影响检查(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

如果我们简单地交换b1从它的值 (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 的方式影响斜率或其标准误差,将任何值(黑点)移到任何这些区域之外都会恢复显着性。 信任区域 问题是:这是有趣的东西吗?还是我错过了一些明显且相当无聊的事实?

1个回答

我倾向于说这只是理解删除诊断的另一种方式。一个点的扰动与该点的影响函数高度相关,该影响函数也可以通过删除诊断来估计。通常,df-beta 用于显示删除诊断,但它们可以缩放为标准化的 df-beta,然后与它们的近似 N(0,1) 分布的临界值进行比较。

就一个点的扰动而言,扰动它以符合通过删除该点获得的最佳拟合线对回归和推理的影响与完全删除该点基本相同。进一步指出,对于线性回归,任何不位于预测量表质心上的点都可以被任意扰动以实现特定的斜率或 p 值。因此,除了重现一些已经建立的诊断之外,我们无法概念化有意义的差异或扰动可能是什么。