我试图理解predict.loess
函数如何能够在原始数据中不存在的点x
处计算新的预测值(y_hat
)。例如(这是一个简单的例子,我知道loess显然不需要这样的例子,但它说明了重点):
x <- 1:10
y <- x^2
mdl <- loess(y ~ x)
predict(mdl, 1.5)
[1] 2.25
loess
回归通过在每个x
上使用多项式来创建预测的y_hat
,因此它会在每个y
处创建一个预测值。然而,由于没有存储任何系数,因此这种情况下的“模型”只是用于预测每个y_hat
的细节,例如 span
或 degree
。当我执行 predict(mdl, 1.5)
时,如何使 predict
能够在这个新的x
处生成一个值?它是否在两个最近的现有x
值及其相关的y_hat
之间进行插值?如果是这样,那么它是如何完成这个过程的细节呢?我已经阅读了在线的
cloess
文档,但无法找到讨论此问题的地方。