【发布时间】:2016-07-31 01:08:06
【问题描述】:
我正在尝试以 95% 的置信度绘制我的 gls 预测值,但我正在努力解决语法问题。
我之前使用 gam 模型完成了此操作,代码如下:
m1 <- gam(Chl ~ s(IR, fx= F, k= -1, bs = "cr"))
m1pred <- predict(m1, se=T, type = "response")
plot(IR, Chl, type ="p")
I1 <- order(IR)
lines(IR[I1], m1pred$fit[I1], lty=1, col="red", lwd = 3 )
lines(IR[I1], m1pred$fit[I1]+2*m1pred$se[I1], lty=2, col = "red", lwd =2)
lines(IR[I1], m1pred$fit[I1]-2*m1pred$se[I1], lty=2, col = "red", lwd = 2)
但这不适用于 gls 模型,因为它说:
pred2$fit 中的错误:$ 运算符对原子向量无效
我已经用另一种方法达到了这一点,我可以按照 Zurr 等人 (2009) 的一些代码绘制预测模型和数据:
plot(IR, Chl,
ylim = c(0, 2.5), pch= 21,
ylab = "Chl concentration µg/L", xlab = "Incident irradiance (W/m-2)")
MyX <- data.frame(IR = seq(from = min(IR),
to = max(IR), length = 1076), ID = "IR")
pred2 <- predict(m1s, newdata = MyX)
lines(MyX$IR, pred2, col="red", lwd=3)
但我不确定如何添加 95% 间隔线?
我想我可以使用 AICmodav 包中的这种语法获取间隔:
predictSE.gls(m1s, MyX, se.fit=T)
lines(MyX$IR, predse, col="red", lwd=1)
但是我不知道如何绘制这个,因为 x 和 y 变量似乎是不同的......有人可以帮忙吗?
我对 R 并不感到惊讶,所以解释越简单,我就越能从中学到更多。
提前致谢 路西
【问题讨论】:
标签: r plot syntax intervals lm