将broom :: glance()与glmmTMB结合使用

时间:2017-10-22 21:52:01

标签: r broom

我使用glmmTMB运行了一组23个模型。 (我已将模型设置为list,示例代码如下所示)

cand.models<-list()
cand.models[[1]]<-glmmTMB(count~depth + slope + SST + (1|individual), family=list(family="truncated_nbinom1", link="log"), data=df)
cand.models[[2]]<-glmmTMB(count~depth + slope + (1|individual), family=list(family="truncated_nbinom1", link="log"), data=df)

我想创建一个汇总表,为cand.models中包含的每个模型提供偏差。我尝试使用broom::glance(),它应该创建一个&#34;一行&#34;摘要包括偏差,以及AIC和BIC等。

summ.table<-do.call(rbind, lapply(cand.models, broom::glance))

但是,输出不包括模型偏差! (它只包括sigma,logLik,AIC,BIC和df.residual)。有谁知道为什么它没有提供偏差(也许是glmmTMB特有的问题?)。或者,是否有人有一个替代解决方案来提取偏差?

1 个答案:

答案 0 :(得分:3)

跟进评论:"master" version of broom并未包含glanceglmmTMB模型的方法,这意味着glance不适用于{ {1}}模型。

您使用的glmmTMB版本是forked Ben Bolker (bbolker)版本,他为broom添加了一个适用于glance的新glmmTMB方法模型对象。但是,此glance方法在输出中不包含deviance。不过,自deviance = -2*log(likelihood)起,您可以执行以下操作:

summ.table$deviance = -2 * summ.table$logLik