多元回归和多重比较

机器算法验证 多重回归 多重比较
2022-03-26 06:05:15

假设我拟合了 p 个解释变量的多元回归。t检验将允许我检查其中任何一个是否重要(H0:βi=0)。我可以进行部分 F 检验来检查其中的某些子集是否重要(H0:βi=βj=...=βk=0)。

我经常看到的是,有人从 5 个 t 检验中得到 5 个 p 值(假设他们有 5 个协变量),并且只保留 p 值 < 0.05 的那些。这似乎有点不正确,因为真的应该进行多重比较检查吗?说这样的话真的公平吗β1β2很重要,但β3,β4β5不是?

在相关说明中,假设我对 2 个单独的模型(不同的结果)运行 2 个回归。是否需要对两个结果之间的重要参数进行多重比较检查?

编辑: 为了区别类似的问题,除了“在调整所有其他协变量时,B_i 是(不)显着的”之外,对 p 值还有其他解释吗?似乎这种解释不允许我查看每个 B_i 并删除小于 0.5 的那些(这与另一篇文章相似)。

在我看来,测试 B_i 和 Y 是否存在关系的可靠方法是获取每个协变量的相关系数 p 值,然后进行 multcomp(尽管这肯定会丢失信号)。

最后,假设我计算了 B1/Y1、B2/Y1 和 B3/Y1 之间的相关性(因此是三个 p 值)。不相关的是,我还做了 T1/Y2、T2/Y2、T3/Y2 之间的相关性。我假设所有 6 次测试的正确 Bonferroni 调整为 6(而不是第一组为 3,第二组为 3 - 因此得到 2 个“半”调整的 p 值)。

2个回答

你是对的。多重比较的问题无处不在,但是,由于它通常被教授的方式,人们只认为它涉及通过一大堆相互比较多个组t-测试。实际上,有很多例子存在多重比较问题,但看起来并不像很多成对比较;例如,如果您有很多连续变量,并且您想知道是否有相关性,那么您将遇到多重比较问题(请参阅此处:查看,您将找到相关性)。

另一个例子是你提出的那个。如果您要运行具有 20 个变量的多元回归,并且您使用α=.05作为您的阈值,即使所有空值都为真,您也会期望您的变量之一仅仅是偶然的“显着”。多重比较的问题只是来自运行大量分析的数学。如果所有零假设都为真且变量完全不相关,则不错误拒绝任何真零假设的概率为1(1α)p(例如,与p=5, 这是.23)。

缓解这种情况的第一个策略是对您的模型进行同时测试。如果您正在拟合 OLS 回归,大多数软件都会为您提供全局F-test 作为输出的默认部分。如果您正在运行广义线性模型,大多数软件都会为您提供类似的全局似然比检验。由于多重比较的问题,该测试将为您提供一些针对 I 型错误膨胀的保护(参见我的回答:线性回归中系数的重要性:显着 t 检验与非显着 F 统计量)。类似的情况是当您有一个用多个虚拟代码表示的分类变量时;你不想解释那些t-tests,但会删除所有虚拟代码并执行嵌套模型测试。

另一种可能的策略是使用 alpha 调整程序,如 Bonferroni 校正。你应该意识到这样做会降低你的能力,并降低你的家庭类型 I 错误率。这种权衡是否值得是您做出的判断。(FWIW,我通常不在多元回归中使用 alpha 校正。)

关于使用问题p-values 做模型选择,我认为这是一个非常糟糕的主意。我不会从一个有 5 个变量的模型转移到一个只有 2 个变量的模型,因为其他的都是“不重要的”。当人们这样做时,他们会偏向他们的模型。它可以帮助您在这里阅读我的答案:自动模型选择算法以更好地理解这一点。

关于您的更新,我不建议您首先评估单变量相关性,以便决定在最终的多元回归模型中使用哪些变量。这样做会导致内生性问题,除非变量彼此完全不相关。我在这里的回答中讨论了这个问题:估计b1x1+b2x2代替b1x1+b2x2+b3x3.

关于如何处理具有不同因变量的分析的问题,您是否要使用某种调整取决于您如何看待分析彼此之间的关系。传统的想法是确定他们是否有意义地被认为是一个“家庭”。此处对此进行了讨论:对于“假设族”,什么可能是一个清晰、实用的定义? 您可能还想阅读此线程:预测多个因变量的方法

在实践层面上,我认为还需要考虑 Beta 是否反映了分类变量(即虚拟变量)的水平。在这些情况下,有兴趣了解给定的 Beta 与(有意义的)参考 Beta 相比是否不同是合理的。但在进行成对比较之前,需要知道分类变量的总体水平是否重要(使用联合 F 检验或似然比检验)。这样做的好处是使用更少的 df