predict.lm 任意系数 r

predict.lm with arbitrary coefficients r

我正在尝试使用 predict.lm 预测 lm 对象。但是,我想使用手动插入的系数。 为此,我尝试了:

model$coefficients <- coeff

(其中 "coeff" 是正确系数的向量) 这确实会根据我的需要修改系数。然而,当我执行

 predict.lm(model, new.data)

我只得到使用 "old" 参数计算的预测。有没有办法强制 predict.lm 使用新的?

Post Scriptum:我需要这样做来拟合 bin-smooth(也称为回归图)。 此外,当我预测 "by hand" (即使用矩阵乘法)时,结果很好,因此我很确定问题在于 predict.lm 无法识别我的新系数。

在此先感谢您的帮助!

破解 $coefficients 元素似乎确实有效。你能展示什么不适合你吗?

dd <- data.frame(x=1:5,y=1:5)
m1 <- lm(y~x,dd)
m1$coefficients <- c(-2,1)
m1
## Call:
## lm(formula = y ~ x, data = dd)
## 
## Coefficients:
## [1]  -2   1

predict(m1,newdata=data.frame(x=7))  ## 5  = -2+1*7

predict.lm(...) 给出相同的结果。

我会非常谨慎使用这种方法,每次你对被黑模型做一些不同的事情时都要检查一下。

一般来说,如果 predictsimulate 方法采用 newparams 参数会很好,但它们通常不会...