首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R线性回归问题:偏移量(x,y,lm.fit=偏移量,singular.ok = singular.ok,...)

R线性回归问题:偏移量(x,y,lm.fit=偏移量,singular.ok = singular.ok,...)
EN

Stack Overflow用户
提问于 2012-12-20 02:26:45
回答 2查看 39.7K关注 0票数 6

我尝试使用R进行回归。我有以下代码,在导入CSV文件时没有问题

代码语言:javascript
复制
    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)

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

代码语言:javascript
复制
Erreur dans lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 
  aucun cas ne contient autre chose que des valeurs manquantes (NA)

我所有的CSV文件都是数字,如果"cell“是空的,我就有"NA”值。一些列不为空,而另一些行有时在NA值下为空...

所以,我不明白为什么我会收到一条错误消息:

代码语言:javascript
复制
na.action=na.omit

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

EN

回答 2

Stack Overflow用户

发布于 2012-12-20 02:42:59

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

代码语言:javascript
复制
 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

因此,当您使用wit、lm()na.action=na.omit运行回归时,数据框的所有行都会被删除,并且没有适合回归的数据。

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

票数 6
EN

Stack Overflow用户

发布于 2015-04-20 14:37:55

我相信我可以补充一点清楚,因为我亲身经历了这一点,这就是为什么我在这里-除了我的问题是gls (泛化最小二乘模型)与标准linaer模型。一些类似的逻辑“可能”适用于这里-或者在类似的情况下。

到目前为止,我不会反驳任何人所说的话。可能会有一些混淆,人们认为这是一种观察,以及R理解这些东西的方式。

假设你有160+自变量。假设你有一个单一的给定来源,你的所有数据都来自这个来源。您可以从文件、数据库等导入它。假设您有相同数量的响应变量或满足R的内容,以便进行回归分析。

R会告诉你,你有两个观察值。现在,如果你有类似的数据以同样的方式从另一个来源获得,如果你在你的全球环境中查看RStudio,你会有3个观察值。

我提到这一点的原因是因为在数学意义上的术语“观察”(正如这里使用的那样)是完全可以接受的。在R的术语中,它以多种方式看待观察结果。

这是我遇到的一个问题的一个很大的原因-它告诉我我有价值缺失,na.omit这个,na.action那个等等。WHen我看了OrchardSpray演示,我回顾了我自己的方法,我找到了它。

重点是,我们如何在数据中进行“观察”是一回事。R对此有另一个术语,它发出错误消息的方式可能会造成额外的混乱。

懂得我的意思吗?

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13958722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档