R:predict.Average在绘图时不考虑偏移量
我目前正在尝试使用MuMIn中的R:predict.Average在绘图时不考虑偏移量,r,predict,mixed-models,R,Predict,Mixed Models,我目前正在尝试使用MuMIn中的predict.averaging函数,根据我在一些GLMM上所做的一些模型平均创建一些图形。我感兴趣的是,当陷阱被放置不同的时间长度时,在某些陷阱中每白天捕获的昆虫数量是否会发生变化;我在GLMMs中包括了偏移量(日志(日光)),以说明这一点。但是当我使用predict函数时,它没有考虑偏移量,我得到的图形与我在没有首先包含偏移量的情况下得到的图形相同。但我知道偏移量会产生影响,这是因为我的模型平均GLMMs的输出,这是我对数据的观察所期望的效果 有没有人知道为
predict.averaging
函数,根据我在一些GLMM上所做的一些模型平均创建一些图形。我感兴趣的是,当陷阱被放置不同的时间长度时,在某些陷阱中每白天捕获的昆虫数量是否会发生变化;我在GLMMs中包括了偏移量(日志(日光)),以说明这一点。但是当我使用predict
函数时,它没有考虑偏移量,我得到的图形与我在没有首先包含偏移量的情况下得到的图形相同。但我知道偏移量会产生影响,这是因为我的模型平均GLMMs的输出,这是我对数据的观察所期望的效果
有没有人知道为什么会出现这个问题,以及我如何进行预测。求平均值将偏移量考虑在内?我在下面包含了我正在使用的代码:
# global model for total insect abundance
glmm11 <- glmmadmb(Total_polls ~ Max_temp+Wind+Precipitation+Veg_height+Season+Year+log(Mean.nectar+1)+I(log(Nectar+1)-log(Mean.nectar+1))+Pan_colour*Assoc_col+Treatment*Area*Depth+(1|Transect)+offset(log(Daylight)), data = ab, zeroInflation = FALSE, family = "nbinom")
# make predictions based on model averaging output (subset delta < 2)
preds<-predict(ave21, full = F, type = "response", backtransform = FALSE) # on the response scale
然后我用它来预测:
pred_results<-cbind(glmm21$frame, preds) # append original dataframe to predictions
plot(pred_results$preds~pred_results$Treatment) # Treatment = trap duration (hours)
pred|u结果| z |)
(截距)-5.896725 0.948102 0.949386 6.211<2e-16***
治疗24-0.714283 0.130226 0.130403 5.478<2e-16***
治疗48-0.983881 0.122416 0.122582 8.026<2e-16***
任何帮助都将是巨大的,因为我找不到任何具体的例子,在该网站上已经解决了这一问题。提前谢谢你,如果你需要我补充什么让这个问题变得更好,请让我知道
汤姆
[1] :
您的代码没有显示什么是ave21
。它包括哪些组件模型?他们有没有术语偏移量(log(Daylight))
?嗨@KamilBarton-很抱歉,我已经编辑了我的帖子。我使用fixed=
参数约束我的pdredge
在每个模型中始终具有偏移量。如果您需要我提供更多信息,请告诉我,并感谢您花时间查看我的问题。我无法用模拟数据复制此问题。请提供一个最小的可重复的例子。我想这意味着我做了/错过了一些愚蠢的事情。我附加了一个链接,其中包含模型平均对象(ave21.Rda)、一些用于复制GLMM/数据帧(ab global.csv)的基本数据以及我使用的代码:-很抱歉,它在Dropbox中,我不知道如何附加它……我已经将predict
的输出与手工计算的预测结果进行了比较,但仍然看不到任何可疑之处。偏移量显然包括在预测中。注意,predict.averaging
不能使用条件平均系数(它给出了一个关于忽略参数“full”的警告)。顺便问一下,您使用的是最新版本吗?
pred_results<-cbind(glmm21$frame, preds) # append original dataframe to predictions
plot(pred_results$preds~pred_results$Treatment) # Treatment = trap duration (hours)
Estimate Std. Error Adjusted SE z value Pr(>|z|)
(Intercept) -5.896725 0.948102 0.949386 6.211 < 2e-16 ***
Treatment24 -0.714283 0.130226 0.130403 5.478 < 2e-16 ***
Treatment48 -0.983881 0.122416 0.122582 8.026 < 2e-16 ***