这一定是一个非常微不足道的问题,但我很难找到解决方案.这是我的问题:
这很有效
#I run a simple regression
data(mtcars)
dataf <- mtcars
summary(fit1 <- lm(mpg ~ wt, data=dataf))
#Then I merge the fitted values with the data frame
dataf$fit <- fitted(fit1)
Run Code Online (Sandbox Code Playgroud)
这(当然)不起作用
dataf[2,]<-NA
summary(fit2 <- lm(mpg ~ wt, data=dataf))
#of course the NA value reduces my lm output
dataf$fit2 <- fitted(fit2)
Error in `$<-.data.frame`(`*tmp*`, "fit2", value = c(23.3189679389035, :
replacement has 31 rows, data has 32
Run Code Online (Sandbox Code Playgroud)
但是我如何才能使第二个例子起作用呢?我通过row.namesin 尝试了一个解决方案model.matrix()但是当我在回归中包含某些因素时这不起作用(如果我理解这一点,这已被报告为错误).谢谢你的热心帮助!
经过一番搜索后,我想我找到了另一种选择
dataf[2,]<-NA
summary(fit2 <- lm(mpg ~ wt, data=dataf, na.action="na.exclude"))
dataf$fit2 <- fitted(fit2)
Run Code Online (Sandbox Code Playgroud)
应该做的伎俩.对?
| 归档时间: |
|
| 查看次数: |
2806 次 |
| 最近记录: |