问题描述
我使用R中的MCMCglmm软件包完成了许多贝叶斯模型,就像这样:
model=MCMCglmm(lifespan ~ weight * littersize,random=~idv(DNA1)+idv(DNA2),data=df,family="gaussian",prior=prior,thin=50,burnin=70000,nitt=400000,verbose=F)
因此,我获得了这种MCMCglmm输出:
summary(model)
post.mean l-95% CI u-95% CI eff.samp pMCMC
(Intercept) 11.23327 8.368 13.73756 6228 <2e-04 ***
weight -1.63770 -2.059 -1.23457 6600 <2e-04 ***
littersize 0.40960 0.024 0.80305 6600 0.0415 *
weight:littersize -0.33411 -0.635 -0.04406 5912 0.0248 *
我想绘制使用MCMCglmm运行的贝叶斯线性模型的结果。我发现要绘制贝叶斯线性模型结果的大多数示例都需要在绘制函数中运行模型,但是我想知道是否可以转换MCMCglmm的输出,以便可以将其用作已经存在的绘制函数的输入可用。我想使用我的MCMCglmm模型的输出,因为它们使用两个随机因素运行,并且运行起来也有些耗时,所以我想避免不得不在另一个程序或程序包中重新运行模型。
如果我使用非贝叶斯方法运行相同的模型,只需给出一些额外的信息:
model2<-lm(lifespan ~ weight * littersize,data=df)
我获得以下输出:
summary(model2)
Estimate Std. Error t value Pr(>|t|)
(Intercept) 11.8846 0.1626 73.073 < 2e-16 ***
weight -1.8955 0.1557 -12.175 < 2e-16 ***
littersize 0.6142 0.1805 3.403 0.00100 **
weight:littersize -0.4340 0.1423 -3.050 0.00302 **
我可以这样绘制:
p2 <- interact_plot(model2,pred = weight,modx = littersize,plot.points = TRUE,jitter = 0.1,point.shape = TRUE,x.label = "weight (kg)",y.label = "lifespan (years)",main.title = "lifespan ~ sqrt(weight) * litter size",legend.main = "litter size")
p2 + theme_apa()
要获取此交互图:
如果可能的话,我想用上述的MCMCglmm输出获得这种图。
谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)