问题标签 [glmmtmb]

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 投票
1 回答
417 浏览

r - 如何围绕模型估计手动绘制 SE/CI

我正在尝试在数据之上手动绘制模型估计。我的真正问题远比这复杂,所以我想尽可能避免使用predict,并且更愿意了解如何计算这些预测而不是依赖某些包。

(底部的可重复示例的数据。)

所以我首先运行一个模型,并获取模型估计和标准误差:

然后,我创建一个 x 值序列来预测

然后我用两种不同的方法预测 y 值(使用predict和编写应该做同样事情的方程)

我们绘制两条预测线(一条为顶部较小的红线):

在此处输入图像描述

我们看到我写的方程和predict函数一样。都好。但是,当我在该行周围添加 SE / 95% CI 功能区时,我在尝试重新创建它时遇到了问题(这里我保留为 SE,因为 95% CI 会导致更多笨拙的情节)。我以许多不同的方式玩过这个公式,但似乎无法理解。出于某种原因,我似乎找不到任何关于它的帖子,但也许我没有使用正确的搜索词。谁能向我解释我在这里缺少什么。似乎我的错误功能区(红色轮廓)中缺少相当多的复杂性。

在此处输入图像描述

或者使用 95%CI,比如我的predict丝带,它更离谱:

在此处输入图像描述

0 投票
0 回答
165 浏览

r - 如何将参数应用于系数的多模型点和须图?

我正在尝试创建如下图(取自https://cran.r-project.org/web/packages/dotwhisker/vignettes/dotwhisker-vignette.html),但没有截距,也没有重新缩放:

我一直在关注 https://cran.r-project.org/web/packages/glmmTMB/vignettes/model_evaluation.pdf中的代码:

我尝试通过以下方式应用此代码以实现多个模型的 dwplot(没有截距且没有重新缩放):

但我收到此错误消息:

当我在没有该by_2sd()功能的情况下运行它时,我没有收到错误消息,但仍显示截距。

任何帮助将非常感激。

0 投票
2 回答
136 浏览

r - 从拟合的 glmmTMB 模型模拟 negbin 数据 - 系列 negbin1

glmmTMB使用family = nbinom1. 现在我想根据预测值和离散度对数据进行模拟。但是,从帮助文件中,看起来 go-tornbinom函数使用family=nbinom2方差等于 的参数化mu + mu^2/size

1)谁能帮我弄清楚如何模拟family=nbinom1数据(方差等于mu + mu*size)?

2)另外,我提取/使用分散值作为尺寸是否正确?

非常感谢!

当前代码(未提供数据,因为没关系),stats:::rnbinom尽管方差定义不匹配,但仍使用该函数:

0 投票
2 回答
558 浏览

r - AICc():logLik 出错,不能应用于“逻辑”类的对象

我正在尝试为我的一些模型获取 AICc 表,这些模型是使用包 glmmTMB 构建的。该模型给出了一个 logLik 值,但没有给出 AICc。当我将模型放入 AICc() 时:

我收到此错误:

我使用了其他函数,如 AICtab() 并得到了同样的错误,所以我相信它在模型本身中。如果有人能够在这里解释此错误,请告诉我,谢谢。

编辑:

使用的最小数据集和模型:

0 投票
1 回答
796 浏览

r - R中的零膨胀过度分散计数数据glmmTMB错误

我正在使用零膨胀和过度分散且具有随机效应的计数数据(可在此处获得)。最适合处理此类数据的软件包是glmmTMB(此处的详细信息此处的故障排除)。

在处理数据之前,我检查了它的正态性(它是零膨胀的)、方差同质性、相关性和异常值。数据有两个异常值,我从上面的数据集 linekd 中删除了它们。来自 18 个位置的 351 个观测值 ( prop_id)。

数据如下所示:

响应变量是euc0,随机效应是prop_idquad_id。其余变量是固定效应(均代表不同植物物种的覆盖百分比)。

我要运行的模型:

seed0运行代码后我得到的错误是:

optimHess(par.fixed, obj$fn, obj$gr) 中的错误:optim 中的梯度评估为长度 1 而不是 15 另外:有 50 个或更多警告(使用 warnings() 查看前 50 个)

warnings()给出:

我通常也指中心化和标准化我的数值变量,但这只会消除第一个错误并保留NA/NaN错误。我尝试添加这样的glmmTMBControl语句OP,但它只是打开了一个全新的错误世界。

我怎样才能解决这个问题?我究竟做错了什么?

将不胜感激详细的解释,以便我将来可以学习如何更好地解决此问题。或者,我对MCMCglmm解决方案持开放态度,因为该功能也可以处理此类数据(尽管运行时间更长)。

0 投票
2 回答
381 浏览

r - 从 glmmTMB 输出中提取后验模式和可信区间

我通常使用lme4包,但glmmTMB包越来越适合处理高度复杂的数据(想想过度分散和/或零通货膨胀)。

glmmTMB有没有一种方法可以从模型中提取后验模式和可信区间,类似于对lme4模型的处理方式(例如此处)。

细节:

我正在使用零膨胀和过度分散且具有随机效应的计数数据(可在此处获得)。最适合处理此类数据的包是glmmTMB(详情请点击此处)。(注意两个异常值:euc0==78np_other_grass==20)。

数据如下所示:

glmmTMB型号:

我通常如何提取lmer/glmer模型的后验模式和可信区间:

0 投票
1 回答
21 浏览

r - GlmmNP 包给了我错误

我是新来的。我要求它拟合一个模型,该模型考虑了以两种花粉处理方式喂养的蜜蜂,放置在不同的笼子中,并每天记录它们的重量。我试图解决的问题是蜜蜂的体重是否随饮食而变化。笼子,复制品嵌套在复制品中。我的响应变量是体重。我的解释变量是:饮食、日和复制/笼子/蜜蜂。需要两个模型,一个具有混合效应,包括随机变量,第二个。我正在运行的代码如下所示:

使用带有功能 glmmNP 的 gamlss.mx 包

库(gamlss.mx) 库(gamlss.dist)

m1<- glmmNP(Weight.g.~ Diet+ (1|Replicate/Cage/Bee), family="weibull", data=beewt)

m1<- glmmNP(Weight.g.~ Diet+ (1|Replicate/Cage/Bee), family="Gamma", data=beewt)

m1<- glmmNP(Weight.g.~ Diet+ (1|Replicate/Cage/Bee), family="Gumbell", data=beewt)

错误信息是:找不到函数 glmmNP#

我已经尝试过其他软件包,如 MASS 的功能:glmm(PQL) library(MASS) model<- glmmPQL(Weight.g.~ Diet+ (1|Replicate/Cage/Bee), family="Gamma", data=beewt)

错误消息是:缺少参数“random”,没有默认值

请告知我如何适当地调整我的代码。

0 投票
0 回答
168 浏览

r - MuMIn 的疏通功能中的“子集”命令是否适用于随机效果?

我有以下带有随机斜率的 GLMM,我正在使用 MuMIn “dredge”进行模型平均(我认为我的数据集不相关,所以我只在此处包含代码):

sett_global2 <- glmmTMB(sett_dens~ depth_scale + sst_six_scale + exposure_six_month_daily_log_scale + (1|kelp)+ (0 + sst_six_scale|kelp) + (1|site) + (1|Year), data = sett_model_data, family=nbinom2)

当我最初尝试疏通模型时,它可以工作,但出现以下警告消息:

dredge(sett_global2, beta = "none", rank = "AIC", trace = 2)

警告信息: 1:随机斜率不作为固定效应出现。这人为地夸大了条件随机效应方差。解决方案:重新指定固定结构!2:随机斜率不作为固定效应存在。这人为地夸大了条件随机效应方差。解决方案:重新指定固定结构!3:随机斜率不作为固定效应存在。这人为地夸大了条件随机效应方差。解决方案:重新指定固定结构!

表明即使“sst_six_scale”的固定效应不在完整模型集中拟合的模型中,该模型仍以随机斜率“(0 + sst_six_scale|kelp)”进行拟合。

因此,我尝试再次使用“子集”命令中的“dc”参数来疏通模型,以便仅在模型中存在相应的固定效应时才包含随机斜率:

dredge(sett_global2, beta = "none", rank = "AIC", subset = dc("cond(sst_six_scale)" , "cond(0 + sst_six_scale | kelp)"), trace = 2)

但我仍然得到与以前相同的警告消息,向我表明子集命令无法正常工作。我确保使用“getAllTerms”来获取适当的变量名称以放入子集命令中,并且在运行上述代码时我没有收到任何错误,所以我真的想不出它不工作的任何原因。这让我想知道“子集”命令是否完全适用于随机效应。任何人都可以为我阐明这一点吗?

0 投票
1 回答
645 浏览

r - 为什么我在模型摘要输出中得到 NA?使用 glmmTMB() 的零膨胀 GLMM

我正在尝试使用glmmTMB;运行零膨胀负二项式 GLMM 但是我在模型摘要输出的和值中得到了NAs 。我不确定原因是什么;我遵循了小插图和在线帮助,但我认为我的数据和我尝试使用的技术一定存在问题。我的数据类似于支持文档中使用的示例:负二项分布,零膨胀,具有相同的数据结构。zpSalamanders

问题出在哪里?这些数据适合使用family = nbinom2吗?

数据:

我的模型:

0 投票
1 回答
184 浏览

r - glmmTMB中变量之间的对比

作为一个可重现的示例,让我们使用下一个无意义的示例:

实际上,我真正的模型家庭是 nbinom2。我想在 和 之间进行对比disp测试hp。所以,我尝试:

我怎样才能避免这个错误?

谢谢!