使用glmmadmb解释mcmc输出

时间:2013-11-26 18:08:47

标签: r mixed-models

我正在尝试使用glmmadmb评估负二项混合模型的输出。总结输出我将汇总函数与输出forom mcmc选项进行比较。我已经运行了这个模型:

         pre1 <- glmmadmb(walleye~(1|year.center) + (1|Site) ,data=pre,    
             family="nbinom2",link="log",
             mcmc=TRUE,mcmc.opts=mcmcControl(mcmc=1000))

我有两个随机拦截:年份和网站。年份有33个级别,网站有15个。

摘要(pre1)中的站点和年份的随机效应参数估计似乎与mcmc输出的后验分布不一致。我使用50%置信区间作为估计值,该估计值应与摘要函数的参数估计值一致。这是不正确的?有没有办法在随机效应参数周围使用汇总函数来判断这是否是方差问题?我尝试使用postvar = T与ranef,但这不起作用。另外,有没有办法用信息性的行名格式化mcmc输出,以确保我使用正确的估计值?

glmmabmb的摘要输出: 摘要(PRE1)

Call:
glmmadmb(formula = walleye ~ (1 | year.center) + (1 | Site), 
data = pre, family = "nbinom2", link = "log", mcmc = TRUE, 
mcmc.opts = mcmcControl(mcmc = 1000))

AIC: 4199.8 

Coefficients:
        Estimate Std. Error z value Pr(>|z|)    
 (Intercept)    3.226      0.154      21   <2e-16 ***

 Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Number of observations: total=495, year.center=33, Site=15 
Random effect variance(s):
Group=year.center
             Variance StdDev
 (Intercept)   0.1085 0.3295
 Group=Site
             Variance StdDev
 (Intercept)   0.2891 0.5377

 Negative binomial dispersion parameter: 2.0553 (std. err.: 0.14419)

 Log-likelihood: -2095.88 

mcmc输出: m&lt; - as.mcmc(pre1 $ mcmc) CI < - t(申请(m,2,分位数,c(0.025,0.5,0.975)))

                    2.5%          50%         97.5%
(Intercept)  2.911667943  3.211775843  3.5537371345
tmpL.1       0.226614903  0.342206509  0.4600328729
tmpL.2       0.395353518  0.554211483  0.8619127547
alpha        1.789687691  2.050871824  2.3175742167
u.01         0.676758365  0.896844797  1.0726750539
u.02         0.424938481  0.588191585  0.7364795440

这些估计值继续为u.48,以包括年份和站点特定系数。

提前感谢您对此问题的任何想法。 蒂芙尼

1 个答案:

答案 0 :(得分:3)

  

摘要(pre1)中的站点和年份的随机效应参数估计似乎与mcmc输出的后验分布不一致。我使用50%置信区间作为估计值,该估计值应与摘要函数的参数估计值一致。这是不正确的?

不是50%置信区间,它是50%的分位数(即中位数)。年度和场内标准差的拉普拉斯近似值的点估计值分别为{0.3295,0.5377},这似乎非常接近MCMC中位数估计值{0.342206509,0.554211483} ...如下所述,MCMC tmpL参数是随机效应标准偏差,而不是差异 - 这可能是造成混淆的主要原因?

  

有没有办法在随机效应参数周围使用汇总函数来判断这是否是方差问题?我尝试使用postvar = T与ranef,但这不起作用。

lme4包(不是glmmadmb包)允许通过{{1来估计条件模式的方差(即与特定级别相关的随机效应) (ranef(...,condVar=TRUE)现已弃用)。有关条件模式不确定性的等效信息可通过postVar=TRUE获得(参见ranef(model,sd=TRUE))。

但是,我认为您可能正在寻找?ranef.glmmadmb(方差 - 协方差矩阵)和$S(方差 - 协方差估计的Wald标准误差)(尽管如上所述,我不是我认为确实存在问题。

  

另外,有没有办法用信息性的行名格式化mcmc输出,以确保我使用正确的估计值?

见p。 $sd_S中的15个:

  

vignette("glmmADMB",package="glmmADMB")中的MCMC输出未完全翻译。它按顺序包括:

  • glmmADMB零通胀参数(原始)
  • pz以与fixed effect parameters或结果相同的方式命名 coef()
  • fixef()差异(标准偏差等级)
  • tmpL方差 - 协方差矩阵的相关/非对角元素(相关矩阵的Cholesky因子的非对角元素')。 (如果你需要将它们转换为相关性,你需要在对角线上用1构造相关的矩阵并计算交叉积,CC ^ T(见tmpL1);如果这对你没有意义,联系维护者)
  • tcrossprod overdispersion / scale parameter
  • alpha随机效果(未缩放:可以使用u的估计随机效应标准偏差来缩放这些效果