R:如何将lm残差包含在data.frame中?

时间:2013-06-12 16:32:40

标签: r lm

我试图将lm中的残差重新放回原始data.frame:

fit <- lm(y ~ x, data = mydata, weight = ind)
mydata$resid <- fit$resid

如果残差与mydata的行数相同,则第二行通常会起作用。但是,就我而言,ind的一些元素是NA。因此,剩余长度通常小于行数。另外fit$resid是“数字”的向量,因此我没有标签将其与mydata data.frame合并回来。有没有一种优雅的方法来实现这一目标?

1 个答案:

答案 0 :(得分:6)

如果ind只是一个向量,我认为应该很容易。

sel <- which(!is.na(ind))
mydata$resid <- NA
mydata$resid[sel] <- fit$resid