我在R中运行了几个MCMCglmm模型,并希望绘制回归估计值以及置信区间。我只对绘制固定效果感兴趣,因为我的随机效应是单个演员,个人接受者和团队--所有这些在统计上都不重要。
基于哈德菲尔德的教程和小片段,以及博尔克等人2012年的论文(猫头鹰的例子),我决定使用coefplot2(),尽管dotchart()似乎也是一种选择。我将与coeftab()一起使用它,如下代码示例所示。我的问题是,我应该能够跳过一些代码,通过使用var.idx来指定我只想要绘制某些效果;但这是抛出错误"var.idx: is not a graphical parameter。我想知道这是关于我的代码,还是关于我正在使用的包。
我的MCMCglmm模型叫做m1.teaching。这是对我有用的代码。我首先将回归估计/系数列表为一个新的对象:
m1.coefs <- coeftab(m1.teaching)然后,我创建了另一个新对象,只包含混合效应(当前和r)估计值和置信区间:
m1.coefs.present.r <- c(m1.coefs[3:4,])最后,我绘制了估计值和置信区间:
coefplot2(m1.coefs.present.r$Estimate, sds=m1.coefs.present.r$'2.5%', varnames=c('present','r'), CI=1)根据上面的参考资料和文档,我应该能够做到这一点,而不需要创建一个具有固定效果的新对象这一中间步骤。我之所以想这样做,是因为最终我将展示几个模型对一个场景的影响,而冗长而混乱的代码可能会导致错误。
我认为应该有效的代码,但没有:
coefplot2(m1.coefs$Estimate, sds=m1.coefs$'2.5%', var.idx = m1.coefs[3:4,], varnames=c('present','r'), CI=1)此代码引发错误:
Warning messages:
1: "var.idx" is not a graphical parameter
2: "var.idx" is not a graphical parameter
3: "var.idx" is not a graphical parameter
4: "var.idx" is not a graphical parameter
5: "var.idx" is not a graphical parameter
6: "var.idx" is not a graphical parameter
7: In plot.window(...) : "var.idx" is not a graphical parameter
8: In plot.xy(xy, type, ...) : "var.idx" is not a graphical parameter
9: In title(...) : "var.idx" is not a graphical parameter我没有所有的想法和资源来理解这一点,你的帮助是非常感谢的!
发布于 2018-02-16 12:38:29
MCMCglmm模型的固定效应由$Sol访问。使用[,],您可以指定所需的固定效果,逗号指定所有行,这是所有的迭代。
coefplot2(m1$Sol[,1:5])将绘制MCMCglmm模型m1的前5种固定效果。请注意,您也可以从$Sol中访问特定于级别的随机效果。
随机效应由$VCV访问。
coefplot2(m1$VCV[,c(1,3)]将绘制MCMCglmm模型m1的第1和第3随机效应。
https://stackoverflow.com/questions/24298206
复制相似问题