R线性回归问题:lm.fit(x,y,offset = offset,singular.ok = singular.ok,...)

时间:2012-12-19 18:26:45

标签: r linear-regression lm

我尝试用R回归 我有以下代码,导入CSV文件没有问题

    dat <- read.csv('http://pastebin.com/raw.php?i=EWsLjKNN',sep=";")
dat # OK Works fine
Regdata <- lm(Y~.,na.action=na.omit, data=dat)
summary(Regdata)

然而,当我尝试回归时,它不起作用。我收到一条错误消息:

Erreur dans lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 
  aucun cas ne contient autre chose que des valeurs manquantes (NA)

我的所有CSV文件都是数字,如果“单元格”为空,则我有“NA”值。有些列不是空的,有些其他行有时是空的,带有NA值...

所以,我不明白为什么即使用以下内容我也会收到错误消息:

na.action=na.omit

PS:CSV的数据可在以下位置获得: http://pastebin.com/EWsLjKNN

2 个答案:

答案 0 :(得分:6)

您收到此错误消息,因为所有数据框行至少包含一个缺失值。例如,可以使用以下代码进行检查:

 apply(data,1,function(x) sum(is.na(x)))
 [1] 128 126  82  78  73  65  58  34  31  30  28  30  20  21  12  20  17  16  12  42  50 128

因此,当您运行回归机智lm()na.action=na.omit时,所有数据框行都会被删除,并且没有数据可以适合回归。

但这不是主要问题。如果您提供的数据包含您拥有的所有信息,那么您尝试使用165个独立变量(X变量)应用回归,而只有22个观察值。独立变量的数量必须小于观察数量。

答案 1 :(得分:-2)

我相信我可以为此增加一些清晰度,因为我亲身经历过这一点,这就是为什么我在这里 - 除了我的问题是gls(基因化最小二乘模型)与标准的linaer模型。有些人喜欢逻辑&#34;可能&#34;适用于此处或类似情况。

我不反驳任何人到目前为止所说的话。人们可能会对观察的内容以及R对这些事物的看法感到困惑。

假设你有160多个自变量。假设您有一个给定的来源,其中包含您的所有数据。您可以从文件,数据库等导入它。假设您有相同数量的响应变量或满足R的内容用于回归分析。

R会告诉你有2个观察结果。现在,如果你想从另一个来源以相同的方式获得数据,那么如果你在全球环境中查看RStudio,你就有3个观察结果。

我提到这个的原因是因为术语&#34;观察&#34;在数学意义上(因为它在这里被使用)是完全可以接受的。在R方面,它以多种方式观察观察。

这是我遇到的一个问题的重要贡献者 - 它告诉我我的价值观缺失了,na.omit这个,na.action等等。当我看到OrchardSpray演示时,我回顾了我的自己的方法论,我想通了。

重点是我们如何完成观察&#34;在基准是一回事。 R有另一个术语,它吐出错误信息的方式会引起额外的混淆。

明白我的意思?