【发布时间】:2021-03-24 12:58:49
【问题描述】:
我有一个非常大的数据集,其中包含一个自变量 (Kpl) 和几千个因变量 (Y1,... Yi)。
我想计算所有 Kpl Vs Yi 对的二次函数拟合的 AICc。
我有以下代码,我对几个样本进行了测试并运行良好
cor_data <- read.csv("R/data/experimental_data/kpl_1.csv")
Kpl <- as.matrix(cor_data[,1])
sapply(cor_data[,-1], function(x) AICc(nls(x ~ a*exp(b*Kpl),start = list(a=1,b=1),control=list(maxiter=1000))))
当我在原始文件中添加更多样本时,如果出现错误,整个 sapply 循环停止并且不输出任何数据。我意识到某些模型将无法与我正在尝试的方程式相匹配,这很好,但是有没有办法强制 sapply 循环在错误后继续并给出实际样本的结果工作吗?
如果它还可以打印出拟合失败的原因,则有好处,因为它可能是一堆不同的事情(低于最小因子、高于最大值或错误的起始值)。
【问题讨论】:
-
你在找
tryCatch
标签: r error-handling sapply non-linear-regression nls