如何使用R获得LOWESS拟合的置信区间?

时间:2014-03-28 16:11:49

标签: r linear-regression

我没有找到任何令人满意的答案,对于统计数据的LOWESS回归线的置信区间(CI)。包的R:

plot(cars, main = "lowess(cars)")
lines(lowess(cars), col = 2)

但我不确定如何在它周围画出95%的CI?但是,我知道我可以从

得到估计的方差
V = s^2*sum(w^2)

其中,s2 =估计误差方差,w =应用于X的权重。因此,95%CI应

Y plus/minus 2*sqrt(V(Y))

我知道有一种方法可以让CI从黄土中得到适合,但我更喜欢LOWESS,因为它非常强大。谢谢你的建议。

1 个答案:

答案 0 :(得分:22)

您可以使用predict()loess()执行此操作。 lowess早于loess且功能较少,但速度稍快。但在这种情况下,我会使用loess如下。

plot(cars)
plx<-predict(loess(cars$dist ~ cars$speed), se=T)

lines(cars$speed,plx$fit)
lines(cars$speed,plx$fit - qt(0.975,plx$df)*plx$se, lty=2)
lines(cars$speed,plx$fit + qt(0.975,plx$df)*plx$se, lty=2)

lowess example