【问题标题】:How do I use try (or tryCatch) to fit either a 4 parameter logistic model or 3 parameter logistic model如何使用 try(或 tryCatch)拟合 4 参数逻辑模型或 3 参数逻辑模型
【发布时间】: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


【解决方案1】:

您的cluster(id) 术语是什么?在我添加了一个假的之后,你的数据用LL.3()LL.4()都解决了。

【讨论】:

    猜你喜欢
    • 2022-10-04
    • 1970-01-01
    • 1970-01-01
    • 2012-05-26
    • 1970-01-01
    • 1970-01-01
    • 2012-03-14
    • 1970-01-01
    • 2020-12-22
    相关资源
    最近更新 更多