r - 使用 nls() 时的置信区间
问题描述
我正在编写一个代码来模拟细菌的失活。我能够使用 nls() 获得模型。现在,当我尝试计算和绘制置信区间和预测区间时,我无法得到合适的拟合。较低的 CI 和 PI 被绘制错误,我不知道如何纠正这个问题。
我的代码:
Xo <- c(0, 0.461, 0.978, 2.087)
Y <- c(0, -2.891, -4.197, -4.489)
dat <- data.frame(Xo, Y, colClass="numeric")
f <- function(Xo, n, k) {-k*(Xo)^n}
m <- nls(Y~f(Xo, n, k), data=dat, start=c(n=2, k=20), trace=TRUE)
summary(m)
yfitted <- predict(m)
plot(Xo, yfitted)
lines(Xo, yfitted)
plot(dat$Xo, yfitted, xlim=c(0, 5), ylim=c(-5, 0))
y.conf <- predictNLS(m, interval="confidence", alpha =0.05, nsim=10000)$summary
y.pred <- predictNLS(m, interval="prediction", alpha=0.05, nsim=10000)$summary
matlines(Xo, y.conf[, c("Sim.2.5%", "Sim.97.5%")], col="red", lty="dashed")
matlines(Xo, y.pred[, c("Sim.2.5%", "Sim.97.5%")], col="blue", lty="solid")
解决方案
推荐阅读
- .net-core - .HttpContext.Features.Get
().ReasonPhrase 在 .net core 2.1 中不起作用? - dart - 如何在执行 POST 请求时解决颤振 CERTIFICATE_VERIFY_FAILED 错误?
- node.js - 结合 readline 和 puppeteer 时,console.log 中的进程被阻止
- python - 无法将 excel 行与 pandas 数据框行数匹配
- java - Java 中的 Google Indexing API 请求批处理
- azure - Azure Net core:指定的 CGI 应用程序遇到错误,服务器终止了进程
- python - 'search' 用takes_context=True 修饰,所以它必须有一个'context' 的第一个参数。Django 2.1.5
- spring-boot - 如何将环境注入 ExecutionCondition
- c# - 使用 C# 在 .txt 文件中创建特殊字符
- html - 如何加载带有角度错误的html