【发布时间】:2020-05-10 20:53:03
【问题描述】:
我使用family = nbinom1 安装了glmmTMB 模型。现在我想根据预测值和离散度对数据进行模拟。但是,从帮助文件来看,go-to rnbinom 函数似乎使用了 family=nbinom2 参数化,其中方差等于 mu + mu^2/size。
1) 谁能帮我弄清楚如何模拟family=nbinom1 数据(其中方差等于mu + mu*size)?
2) 另外,我提取/使用分散值作为尺寸是否正确?
非常感谢!
当前代码(未提供数据,因为没关系),尽管方差定义不匹配,但使用 stats:::rnbinom 函数:
library(glmmTMB)
mod <- glmmTMB(y ~ x + (1 | ID), data = df, family = nbinom1)
preds <- predict(mod, type = "response")
size <- sigma(mod)
sim <- rnbinom(nrow(df), mu = preds, size = size)
【问题讨论】:
-
稍后可以尝试详细的答案,您可以先使用nbinom1公式轻松计算出方差,计算大小,然后将其传递回rnbinom。 size 可以是一个向量,只要 mu
-
sigma(mod) 没问题。
-
没错,好点。如果你把答案写出来,我会接受的。
-
如果您只想从观察到的预测变量/拟合模型中进行模拟,则可以使用
simulate()方法来拟合对象(也可以对您提出的任何模拟进行交叉检查)