[R-sig-ME] multilevel logistic model with MCMCglmm

Jarrod Hadfield j.hadfield at ed.ac.uk
Sun Apr 3 17:53:38 CEST 2011


Hi Wincent,

The model you ran is meaningless, because with categorical data or  
ordinal data the residual variance cannot be estimated from the data.  
The best option is to fix the residual variance at some value (I use 1):
   
MC1<-MCMCglmm(use~urban+age+livch,random=~district,data=Contraception,family="categorical",prior=list(R=list(V=1, fix=1), G=list(G1=list(V=1, nu=0))),  
slice=T)

I have left the prior on the district variance flat and improper, and  
I have used slice sampling (slice=T) instead of Metropolis-Hastings  
updates because the chain mixes faster:

summary(MC1)

  Iterations = 3001:12991
  Thinning interval  = 10
  Sample size  = 1000

  DIC: 2391.208

  G-structure:  ~district

          post.mean l-95% CI u-95% CI eff.samp
district    0.3333   0.1407   0.5777    459.9

  R-structure:  ~units

       post.mean l-95% CI u-95% CI eff.samp
units         1        1        1        0

  Location effects: use ~ urban + age + livch

             post.mean l-95% CI u-95% CI eff.samp  pMCMC
(Intercept)  -2.02718 -2.38427 -1.69340    559.7 <0.001 ***
urbanY        0.87874  0.61785  1.16036    640.9 <0.001 ***
age          -0.03233 -0.05013 -0.01523    531.4 <0.001 ***
livch1        1.32248  0.96341  1.66027    578.6 <0.001 ***
livch2        1.63986  1.24274  2.05330    542.6 <0.001 ***
livch3+       1.61311  1.18382  2.00119    512.2 <0.001 ***

Note that you can rescale the estimates to approximate what they would  
be if the residual variance was zero (i.e. the glmer default):

c2<-((16*sqrt(3))/(15*pi))^2

posterior.mode(MC1$Sol/sqrt(1+c2))
(Intercept)      urbanY         age      livch1      livch2     livch3+
-1.69345255  0.72259159 -0.03015856  1.14554895  1.38585993  1.34449154

which are closer to the ML estimates.

Cheers,

Jarrod


  Quoting Wincent <ronggui.huang at gmail.com> on Sun, 3 Apr 2011 20:32:27 +0800:

> Dear list members,
>
> I fit a random intercept morel with lme4 first, then I tried to fit the same
> model with MCMCglmm. I didn't specify the prior and ran 300000 iterations.
> The model still didn't converge as the autocorrelation is very high (>0.4).
> May I ask (1) do I have to specify my own prior? and (2) what is the
> usually/average number of iterations in Bayesian multilevel model? 300000
> seems quite large a number. Do I have to rerun the model if the previous one
> doesn't converge?
>
> Best with thanks.
>
>> data(Contraception,package="mlmRev")
>> library(lme4)
>> fm1 <-
> glmer(use~urban+age+livch+(1|district),data=Contraception,family=binomial,nAGQ=7)
>
>> MC1 <-
> MCMCglmm(use~urban+age+livch,random=~district,data=Contraception,family="categorical",nitt=300000,burnin=240000,thin=100)
>> summary(MC1)
>
>  Iterations = 240001:299901
>  Thinning interval  = 100
>  Sample size  = 600
>
>  DIC: 47.28245
>
>  G-structure:  ~district
>
>          post.mean l-95% CI u-95% CI eff.samp
> district      3242      953     6490      132
>
>  R-structure:  ~units
>
>       post.mean l-95% CI u-95% CI eff.samp
> units     38025    13640    57500    85.53
>
>  Location effects: use ~ urban + age + livch
>
>             post.mean l-95% CI u-95% CI eff.samp  pMCMC
> (Intercept)  -197.901 -262.707 -130.966    92.68 <0.002 **
> urbanY         86.448   53.374  119.831   131.85 <0.002 **
> age            -3.139   -5.439   -1.200   166.36 <0.002 **
> livch1        128.027   76.737  177.583   126.78 <0.002 **
> livch2        159.752  102.289  222.468   109.28 <0.002 **
> livch3+       155.254   92.145  216.916   123.80 <0.002 **
> ---
> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>
>> autocorr(MC1$Sol)
> <snip>
>
> --
> Wincent Ronggui HUANG
> Sociology Department of Fudan University
> PhD of City University of Hong Kong
> http://asrr.r-forge.r-project.org/rghuang.html
>
> 	[[alternative HTML version deleted]]
>
>



-- 
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.




More information about the R-sig-mixed-models mailing list