首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >随机效应的glmmTMB预测误差

随机效应的glmmTMB预测误差
EN

Stack Overflow用户
提问于 2022-06-23 15:49:18
回答 2查看 51关注 0票数 0

我正在尝试创建一个栅格,并使用glmmTMB对模型进行预测。这是基于一个模型,和一个光栅堆栈。我将光栅堆栈转换为数据帧,因为我认为这是函数predict.glmmTMB运行的必要条件。

模型

代码语言:javascript
复制
model6 <- glmmTMB(Used~scale(Road_density)+scale(nonforprop)+scale(devprop)+
                  scale(forprop)+scale(nonfordist_cap3000)+scale(fordist_cap3000)+
                  scale(agridist_cap3000)+scale(devdist_cap3000)+(1|animal_ID),
            data=rasterpoints3,na.action=na.omit,family=binomial(link="logit"))

包含要预测的栅格堆栈值的数据帧。

代码语言:javascript
复制
predstack <- as.data.frame(stack2)

误差

代码语言:javascript
复制
 glmmTMB:::predict.glmmTMB(model6,predstack,re.form=NA)

eval中的错误(predvars,data,env):找不到对象'animal_ID‘

我希望更有经验的人能帮我解决这个问题。animal_ID是我的glmmTMB对象模型6中的随机拦截。我使用这个包,而不是例如raster::predict,因为它应该能够处理随机效应。据我所知,re.form=NA应该处理这个问题吗?

EN

回答 2

Stack Overflow用户

发布于 2022-06-23 16:25:29

关于这一点有一个开放的问题,但是解决方法应该很简单:定义

代码语言:javascript
复制
predstack$animal_ID <- NA

数据中必须存在随机效应变量,但没有使用它。(由于glmmTMB的内部结构,在包级别上修复这个问题并不容易。)

票数 0
EN

Stack Overflow用户

发布于 2022-06-23 20:07:01

考虑到本的回答,这也应该适用于rasterterra包:

代码语言:javascript
复制
 p <- predict(stack2, model6, const=data.frame(animal_ID=NA), re.form=NA)

(但在没有例子的情况下,我无法检查它)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72733103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档