在lm()调用中更新数据

ric*_*rdo 2 regression r

是否有相当于更新lm调用对象的数据部分?

例如,假设我有以下型号:

dd = data.frame(y=rnorm(100),x1=rnorm(100))
Model_all <- lm(formula = y ~ x1, data = dd)
Run Code Online (Sandbox Code Playgroud)

是否有一种操作lm对象的方法具有以下效果:

Model_1t50 <- lm(formula = y ~ x1, data = dd[1:50,])
Run Code Online (Sandbox Code Playgroud)

我试图从样本预测测试中构建一些psudo,拥有一个lm对象并简单地滚动数据将非常方便.

Ben*_*ker 5

我相当确定update你实际上做了你想要的!

example(lm)
dat1 <- data.frame(group,weight)
lm1 <- lm(weight ~ group, data=dat1)
dat2 <- data.frame(group,weight=2*weight)
lm2 <- update(lm1,data=dat2)
coef(lm1)
##(Intercept)    groupTrt 
##      5.032      -0.371 
coef(lm2)
## (Intercept)    groupTrt 
##     10.064      -0.742 
Run Code Online (Sandbox Code Playgroud)

如果你希望从中获得效率,你会感到失望--R只是替换新的参数并重新评估调用(参见代码update.default).但它确实使代码更清洁......