R 如何从nls计算95%预测区间
借用此示例数据,如果我有以下数据,并且我将以下非线性模型拟合到其中,我如何计算曲线的95%预测区间R 如何从nls计算95%预测区间,r,predict,nls,non-linear-regression,R,Predict,Nls,Non Linear Regression,借用此示例数据,如果我有以下数据,并且我将以下非线性模型拟合到其中,我如何计算曲线的95%预测区间 library(broom) library(tidyverse) x <- seq(0, 4, 0.1) y1 <- (x * 2 / (0.2 + x)) y <- y1 + rnorm(length(y1), 0, 0.2) d <- data.frame(x, y) mymodel <- nls(y ~ v * x / (k + x),
library(broom)
library(tidyverse)
x <- seq(0, 4, 0.1)
y1 <- (x * 2 / (0.2 + x))
y <- y1 + rnorm(length(y1), 0, 0.2)
d <- data.frame(x, y)
mymodel <- nls(y ~ v * x / (k + x),
start = list(v = 1.9, k = 0.19),
data = d)
mymodel_aug <- augment(mymodel)
ggplot(mymodel_aug, aes(x, y)) +
geom_point() +
geom_line(aes(y = .fitted), color = "red") +
theme_minimal()
库(扫帚)
图书馆(tidyverse)
x根据链接的问题,看起来investr::predFit
函数将执行您想要的操作
investr::predFit(mymodel,interval="prediction")
?predFit
没有解释如何计算间隔,但是?plotFit
说:
非线性回归(即。,
“nls”类的对象基于线性近似,如下所示:
如贝茨和瓦茨(2007)所述。这个有趣的活动是由
“NLSTOLS”软件包中的“plotfit”函数
也称为(例如,请参阅emdbook::deltavar
)。谢谢您的回答。。。根据您的评论,我最后检查了investr:::predFit.nls中的源代码。从那里我得到了程序,现在我编写了自己的函数。。非常感谢。
investr::predFit(mymodel,interval="prediction")