问题标签 [drc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
39 浏览

r - 具有混合效应 Brain-Cousens 兴奋模型的 medrm(包 medrc)的 str2lang(x) 错误

我有一个实验,在 5 次不同的消化持续时间(0 次和 4 次非 0 次)后检查种子发芽。有四个重复,四个块中的每一个。我想使用medrmfrom package将结果建模为非线性混合效应模型medrc,并比较几个模型的拟合,包括 Brain-Cousens (1989) 兴奋模型,以选择最佳拟合。这是一个示例数据集:

我的模型

该代码非常适用于我要比较的其他模型类型:log-logistic ( fct = LL.3())、Weibull I ( fct = W1.3()) 和 Weibull II ( fct = W2.3()),但是,当我使用 Brain-Cousens 模型 ( fct = BC.4()) 时,出现以下错误:

这个错误是什么意思,我该怎么办?我看了一点源代码(可在此处获得:https ://rdrr.io/github/DoseResponse/medrc/src/R/medrm.R )(并不是说我理解其中 99% 的作用......)并注意到BC.4似乎没有包括在内,这让我想知道是否medrc支持 Brain-Cousens 模型?如果medrc不支持它,对我来说最好/最容易使用的功能是什么?(仅供参考,我的编程经验有限)

通过在大多数在线教程中提供的示例中将fct参数设置为 ,也可以生成相同的错误。BC.4()vinclozolinmedrc

0 投票
1 回答
52 浏览

r - R中3参数weibull的拐点?

R 中的drc包包含自启动函数,用于将 3 参数 Weibull 模型拟合到数据。该包提供了 3 参数 weibull 的 2 个参数化(https://cran.r-project.org/web/packages/drc/drc.pdf):

包的文档表明d代表上渐近线,b是速率参数,并且曲线在剂量处具有拐点e。但是,绘制这些函数并使用 R 求解二阶导数 = 0 时会给出e与拐点不同的值。例如:

文档不正确吗?或者这是否与 weibull 的特定记录参数化有关(将其限制为正数)?

0 投票
0 回答
52 浏览

r - 如何让我的 dr4pl(drc 替代)剂量响应代码忽略它不适合的模型?

我有一些代码可以将 dr4pl 模型拟合到数据集中的剂量反应曲线,并生成一个包含相关 IC50 的表格,或者将曲线拟合到 ggplot。

但是,当 dr4pl 模型无法将曲线拟合到特定数据位时,它会失败,并且代码不会运行。因此,如果我在包含 100 条曲线的数据上运行代码,其中一条包含错误数据,那么整个过程都会失败,而不会告诉我哪里出了问题。

我需要帮助弄清楚如何 i) 让它运行,并忽略它无法拟合的曲线,或者 ii) 标记数据集的有问题的部分。

这是可以添加到 ggplot 的模型:

示例图: 左=曲线拟合成功,右=曲线拟合失败

这产生了一个函数,允许我将模型传递给数据集并生成 IC50:#builds IC50 table

这将在数​​据集上运行该函数以生成包含 IC50 的表:

加载两个不同的数据集,每个数据集有 2 条曲线。Dat1 将使函数失败并且不生成输出。Dat2 工作得很好。

正如您将看到的,如果您运行这些并尝试生成 IC50 表:

我真的很感激一些帮助,在此先感谢。

0 投票
2 回答
122 浏览

r - 使用 drm 函数在一张图上绘制多条拟合曲线

我正在尝试绘制一些已符合drm()R 中 drc 包中的函数的数据。我希望在同一个图中有几条曲线相互重叠。

我可以得到一条拟合曲线,其余的不拟合成这样的曲线:

但是,当我尝试将所有拟合曲线放入同一个图中时,如下所示:

我收到以下错误消息:

xy.coords(x, y) 中的错误:“x”是一个列表,但没有组件“x”和“y”

知道为什么会发生这种情况以及如何解决它吗?是lines()功能限制还是plot()功能限制?

0 投票
1 回答
232 浏览

r - drm() 错误 某些数据收敛失败,但类似数据不收敛?

我正在尝试遍历一些剂量相关的数据并使用该drm()函数对其进行拟合。但是,对于某些数据,我收到以下错误:

optim 错误(startVec,opfct,hessian = TRUE,method = optMethod,control = list(maxit = maxIt,:非有限有限差分值 [4] drmOpt 错误(opfct,opdfct1,startVecSc,optMethod,受约束,warnVal , : 收敛失败

我不明白为什么这仅发生在特定数据集上,当几乎相同的数据通过就好了。我试着用谷歌搜索一下,看看是否有人遇到过类似的问题并找到了这个(但是,它并没有真正为我提供有用的解决方案)。

https://stats.stackexchange.com/questions/185542/questions-with-fitting-a-dose-response-curve-using-drc-package-in-r

以下是 2 个产生和不产生任何错误的数据示例:

这将为您提供以下情节

Data_OK 的输出图

虽然这

生成以下错误

optim 错误(startVec,opfct,hessian = TRUE,method = optMethod,control = list(maxit = maxIt,:非有限有限差分值 [4] drmOpt 错误(opfct,opdfct1,startVecSc,optMethod,受约束,warnVal , : 收敛失败

有趣的是,我注意到如果我更改浓度向量,则不会发生错误。

Data_NotOK,更改了浓度向量

我还尝试将拟合更改为 LL.4()、LL.3() 等,但这似乎无济于事......

知道为什么会发生这种情况以及如何解决吗?

编辑

我现在还 使用 R 中的 drc 包发现了多个剂量反应曲线的回归

他们建议使用 try/catch,我将对其进行测试。我将发布有关进展情况的更新。但是,我仍然想获得某种数据图。知道如何将其实现为循环吗?

0 投票
0 回答
24 浏览

r - predict.drc 的帮助页面中可能存在错误

我正在使用drc对异质性种子萌发数据进行建模,因此我正在估计稳健的标准误差,就像在此处的黑麦草示例(p.3) 中所做的那样(由于 R 更新,示例中的代码会引发错误。对于该错误的解决方案,请参阅问题)。我想绘制带有置信区间的线,这意味着我需要predict()在考虑稳健标准误差的情况下进行预测。

drc有自己的内置函数,用于预测类drc,的对象predict.drc。但是,当我查看帮助页面的“详细信息”部分时,predict.drc它会显示“目前它仅适用于假设所有观察值都具有共同方差的情况。” 参数 (vcov.) 允许sandwich选择稳健标准误差的估计。这些似乎是矛盾的。

我对稳健标准误差的(有限)理解是,它们是在违反异质方差假设时进行估计的。所以,我的问题是,我对稳健标准错误的理解是错误的(因此vcov. = sandwich做了其他事情),还是没有更新详细信息部分以反映predict.drc当前的工作方式?

0 投票
1 回答
92 浏览

r - 根据生存数据绘制剂量反应曲线

我想从 中制作剂量反应曲线library(drc),并坚持如何正确准备我的数据集以制作绘图。特别是,我正在努力如何准备好我的 y 轴。

我制作了一个数据框(df)来帮助阐明我想做什么。

df <- read.table("https://pastebin.com/raw/TZdjp2JX", header=T)

为今天的练习打开必要的库

library(drc)

library(ggplot2)

假设我喜欢蜂鸟,并用不同浓度的糖做一个实验,目的是看看哪种浓度最适合蜂鸟。因此,我在封闭环境(此处为“房间”列)中进行了一项实验,有 4 种不同的糖浓度(列浓度),每个浓度有 10 只单独的鸟。我还用 4 个平行重复运行每个实验,这就是为什么有 4 个“房间”。36 小时后(“时间”列),我进入房间,检查有多少只鸟幸存下来,创建一个“是/否”变量,或 1 和 0(这里,这是我的“状态”列),其中 1= =生存,0 ==死亡。

使用这个数据集,我特别设定了大多数在浓度 0 下存活,50% 在浓度 1 中存活,25% 在浓度 2 中存活,只有 10% 在浓度 3 中存活。

我遇到的第一个问题是:如何将我的“状态”列生成的 y 轴转换为百分比?我在做 kaplan-meier 生存曲线时已经这样做了,但不幸的是,这在这里不起作用。显然,这应该列应该从 0% 到 100%(我们可以将列称为“死亡率”)。在我成功之后,我想制作一个如下所示的剂量反应曲线(我在网上找到了这个例子,将直接复制到这里使用示例。它来自R中包含的黑麦草数据集)

我必须承认,接下来的代码步骤对我来说有点混乱。

在此处输入图像描述

最后,我想生成一条类似的曲线,但死亡率在 y 轴上,从 0 到 100(从低开始,到高),并且还在回归线周围的灰色阴影区域中显示置信区间。意思是,我的第一步代码应该类似于以下内容:

model <- drc(mortality ~ Concentration, data=df, fct = LL.3()) 但我迷失在“死亡”创作部分,还有一点关于 ggplot 的下一步

谁能帮我实现这一目标?从 的示例中ryegrass,我很困惑如何将其翻译为对我的假装数据集有所帮助。我希望这里有人能够帮助我解决这个问题!非常感谢,如果有其他方法可以让我的数据集结构化等,我将不胜感激。

-安迪

0 投票
0 回答
41 浏览

r - 在drc中建模多个drm模型

我无法在 R 包 DRC 中绘制多个模型 drm。

我的数据包含三个变量;剂量;除草剂 (Trt) 和时机

当我绘制 Dose 和 Trt 时,剂量响应曲线工作正常,但是当我添加 Timing 时,我收到此错误: pmodelsList [[i]] 中的错误:下标超出范围这是我的代码:

0 投票
2 回答
97 浏览

r - R中的简单曲线拟合

我正在尝试找到适合我的数据的方法。但到目前为止还没有运气。尝试了对数的,与 drc 包不同的.. 但我确信一定有更好的我只是不知道类型。另一方面,我将不胜感激有关如何进行一般曲线狩猎的建议。

在此处输入图像描述

0 投票
0 回答
18 浏览

logistic-regression - 为什么使用drc包ED50估计时置信区间和标准误差*1.96有差异?

我正在使用 drc 包来计算我使用的抑制剂的 ED50。我得到了这个值:

我想检查 Estimation +/- 1.96 SE 是否是 CI 的上限/下限。但这不起作用,因为它宁愿更小。我检查了系数,计算出的 CI 为 2.26 SE。这里发生了什么?为什么我不能继续使用我知道的公式来计算 CI?