【发布时间】:2017-04-08 05:02:20
【问题描述】:
我想使用包drc 为一些毒性数据拟合一个 4 参数逻辑回归模型。这是一个示例数据集:
exp.df <- as.data.frame(matrix(nrow = 14, ncol = 2))
exp.df[,1] <- c(3200, 9600, 25600, 25600, 25600, 1600, 800,
6400, 19200, 0, 12800, 1200, 400, 2400)
exp.df[,2] <- c(0.5855615, 0.9625668, 0.4064171, 0.4973262,
0.4732620, 1.0000000, 0.6764706, 0.4652406,
0.5106952, 0.7566845, 0.5427807, 0.5106952,
0.5935829, 0.4759358)
names(exp.df) <- c("Dose", "Response")
Dose_Response <- drm(Response ~ Dose, data = exp.df,
fct = LL.4(), type = "binomial")
导致此警告:
优化错误(startVec, opfct, hessian = TRUE, method = optMethod, control = list(maxit = maxIt, : 非有限差分值 [4] drmOpt(opfct, opdfct1, startVecSc, optMethod, 受约束,warnVal,:收敛失败
如果我运行 3 参数逻辑回归,它会起作用。
Dose_Response <- drm(Response ~ Dose, data = exp.df,
fct = LL.3(), type = "binomial")
我可以使用 try 或 tryCatch 先测试 4 参数逻辑,然后测试 3 参数逻辑回归吗?还是有其他解决方案?
【问题讨论】:
-
我不知道 R 但看起来你只有 2 个 cols,即 2 个功能。在这种情况下,您应该运行 3 参数模型。如果你没有 3 个特征 + 一个偏差项,你就不能尝试 4 个参数。所以 3 将永远有效,而 4 永远不会有效。也就是说,如果我理解正确的话。
标签: r