在具有许多零的数据中使用R中的lm()会产生错误

时间:2015-11-19 23:13:37

标签: r modeling linear-regression data-analysis

我是数据分析的新手,关于在R中使用lm()来创建数据的线性回归模型,我有几个问题。

我的数据如下:

testID    userID    timeSpentStudying    testGrade
12345     007       10                   90
09876     008       0                    75

我的模特:

model <- lm(formula = data$testGrade ~ timeSpentStudying, data = data)

我从RStudio的不到60行数据中得到以下错误(两次):

Warning messages:
1: In sqrt(crit * p * (1 - hh)/hh) : NaNs produced
2: In sqrt(crit * p * (1 - hh)/hh) : NaNs produced

我的问题是,问题是否与包含许多零值实例的数据有关,例如上面的&#39; timeSpentStudying&#39;柱?如果是这样,我该如何处理?是不是lm()能够处理零值,特别是如果这会给数据本身带来意义呢?

谢谢!

1 个答案:

答案 0 :(得分:0)

到目前为止,我无法复制这一点,例如:

dd <- data.frame(y=rnorm(1000),x=c(rep(0,990),1:10))
model <- lm(y~x, data = dd)
summary(model)

Searching the R code base for the code listed in your error并且追溯表明相关行位于plot.lm,这是绘制诊断的函数,问题是您以某种方式为杠杆或&获得值> 1 #34;帽子值&#34;你的一个数据点。但是,我无法看到你如何实现这一目标。数据会更清楚!