我试图将lm中的残差重新放回原始data.frame:
fit <- lm(y ~ x, data = mydata, weight = ind)
mydata$resid <- fit$resid
如果残差与mydata的行数相同,则第二行通常会起作用。但是,就我而言,ind的一些元素是NA
。因此,剩余长度通常小于行数。另外fit$resid
是“数字”的向量,因此我没有标签将其与mydata data.frame合并回来。有没有一种优雅的方法来实现这一目标?
答案 0 :(得分:6)
如果ind
只是一个向量,我认为应该很容易。
sel <- which(!is.na(ind))
mydata$resid <- NA
mydata$resid[sel] <- fit$resid