为什么R返回NA作为lm()系数?


32

我正在lm()为包含财务季度指标(第一季度,第二季度,第三季度,使第四季度成为默认指标)的数据集拟合模型。使用lm(Y~., data = data),我得到a NA作为Q3的系数,并警告说一个变量由于奇异而被排除。

我是否需要添加Q4列?

Answers:


39

NA作为回归系数,表示所讨论的变量与其他变量线性相关。在您的情况下,这意味着,一段一个b c ^。如果是这种情况,那么不删除其中一个变量就没有唯一的回归解决方案。添加Q 4只会使情况变得更糟。Q3=a×Q1+b×Q2+ca,b,cQ4


1
我同意...伪变量定义似乎存在问题。
Dominic Comtois

14
(+1)。NA通常表示该系数不可估计。正如您已经提到的,这可能是由于精确的共线性而发生的。但是,由于没有足够的观测值来估计相关参数(例如,如果),也会发生这种情况。如果您的预测变量是分类变量,并且要添加交互作用术语,则NA可能还意味着没有通过因子水平组合得出的观察值。p>n
2012年

2
p>n

变量不是线性相关的,因为Q3 = 1且Q1 = Q2 = 0。此外,使用stepAIC()并强制模型包含所有这三个变量不会导致任何问题。另外,我对变量的观察次数大约是3倍。我最好的猜测是Q3与其他变量之间存在共线性,我想这是stepAIC中未包含的线性。
Fraijo 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.