多元回归将不起作用:残差:所有349个残差均为0:无残差自由度

时间:2020-04-30 09:46:14

标签: r linear-regression

我根据这个excel文件做了一些简单的回归,它们都工作正常。但是我尝试进行多元回归,但是它以某种方式不再起作用。 我的代码的这一部分:

dsZonderNa <- na.omit(dsAfrika)

我看到它的值为n.s。在某行中,所以我也通过以下方式删除了该行:

dsZonderNa <- dsZonderNa[-c(343),]

我以为是问题,但是当我尝试这样做时仍然无法正常工作:

MRtobin <- lm(dsZonderNa$ProfMarg ~ dsZonderNa$`R&D%-3`+dsZonderNa$`CostEmpl/OPRev`)
summary(MRtobin) 

我得到的结果很奇怪。它给了我很多像这样的行:

Residuals:
ALL 349 residuals are 0: no residual degrees of freedom!

Coefficients:
                                                Estimate Std. Error t value
(Intercept)                                      4.85100         NA      NA
dsZonderNa$`R&D%-3`                              0.62500         NA      NA
dsZonderNa$`CostEmpl/OPRev`0.59399999999999997   1.88738         NA      NA
dsZonderNa$`CostEmpl/OPRev`0.62                 -6.43700         NA      NA
dsZonderNa$`CostEmpl/OPRev`0.65600000000000003  -4.06600         NA      NA
dsZonderNa$`CostEmpl/OPRev`0.65900000000000003   1.90100         NA      NA
dsZonderNa$`CostEmpl/OPRev`0.79300000000000004  -1.15300         NA      NA

最后说:

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 348 and 0 DF,  p-value: NA

我在互联网上查找了一些东西,可能是行不是数字,但是当我尝试使用is.factor()尝试所有列时,它们都返回false。

我真的不是怎么解决这个问题,如果我删除了AvgCost / OpRev变量,它可以工作,但是一旦我使用了那个变量,我就会得到奇怪的输出。因此问题可能出在该列上,但我不知道在检查该列的位置,并且据我所知,它仅包含数值。

希望有人知道我该怎么做。

0 个答案:

没有答案