[R-sig-ME] ZIP MCMCglmm - how to increase effective sample size?
Pierre de Villemereuil
pierre.de.villemereuil at mailoo.org
Wed Nov 1 21:25:57 CET 2017
You can look at the auto-correlation to guess how many more iterations are needed to increase your sample size. Something like:
library(coda)
autocorr.diag(mj$Sol)
autocorr.diag(mj$VCV)
Cheers,
Pierre
On Wednesday, 1 November 2017 20:14:15 NZDT dani wrote:
> Hello Pierre and list members,
>
>
> Thank you so much! The analysis with the new prior worked:) However, the effective samples are still small, so I am trying again the new prior with more iterations - will report back how my effective samples change.
>
>
> Best regards, everyone!
>
> DNM
>
>
> ________________________________
> From: Pierre de Villemereuil <pierre.de.villemereuil at mailoo.org>
> Sent: Tuesday, October 31, 2017 10:11 PM
> To: dani
> Cc: r-sig-mixed-models at r-project.org
> Subject: Re: [R-sig-ME] ZIP MCMCglmm - how to increase effective sample size?
>
> Just some parentheses issue:
> priori <- list(R=list(V=diag(2), nu=1, fix=2),
> G=list(G1=list(V=diag(2)/2, nu=2, alpha.mu=c(0,0), alpha.V=diag(2)*1000),
> G2=list(V=diag(2)/2, nu=2, alpha.mu=c(0,0), alpha.V=diag(2)*1000)))
>
> Cheers,
> Pierre
>
> Le mercredi 1 novembre 2017, 17:18:05 NZDT dani a écrit :
> > Hi Pierre,
> >
> > I tried using the new prior you suggested and I got this error:
> >
> > Error in MCMCglmm(y ~ trait - 1 + at.level(trait,1):(x1+:
> > prior list should contain elements R, G, and/or B only
> >
> > I am not sure what to do about this:)
> > Any advice would be very much appreciated.
> >
> > Thanks,
> > DaniNM
> > <http://aka.ms/weboutlook>
> >
> >
> > ________________________________
> > From: R-sig-mixed-models <r-sig-mixed-models-bounces at r-project.org> on behalf of Pierre de Villemereuil <pierre.de.villemereuil at mailoo.org>
> > Sent: Tuesday, October 31, 2017 2:08 PM
> > To: r-sig-mixed-models at r-project.org
> > Subject: Re: [R-sig-ME] ZIP MCMCglmm - how to increase effective sample size?
> >
> > Hi,
> >
> > There are about three way to increase effective sample size:
> > - increase the number of iterations
> > - use a prior with better properties
> > - change your model somehow (you might not always want to use that one...)
> >
> > In your case, using a slightly more informative prior and the extended parameters prior might help? Something like:
> >
> > priori <- list(R=list(V=diag(2), nu=1, fix=2),
> > G=list(G1=list(V=diag(2)/2, nu=2, alpha.mu=c(0,0), alpha.V=diag(2)*1000)),
> > G2=list(V=diag(2)/2, nu=2, alpha.mu=c(0,0), alpha.V=diag(2)*1000))))
> >
> > Hope this helps,
> > Pierre.
> >
> > On Wednesday, 25 October 2017 18:45:46 NZDT dani wrote:
> > > Dear list members,
> > >
> > > I need some advice regarding this ZIP MCMCglmm model:
> > >
> > > library(MCMCglmm)
> > >
> > > priori <- list(R=list(V=diag(2), nu=0.002,fix=2),
> > > G=list(G1=list(V=diag(2), n=2),G2=list(V=diag(2), n=2)))
> > >
> > > mj <- MCMCglmm(y ~ trait - 1 + at.level(trait,1):(x1+x2+x3+x4+ x5 +x6+x7+ offset),
> > > random = ~idh(trait):group1 + idh(trait):group2,
> > > family = "zipoisson",
> > > prior = priori,
> > > rcov = ~idh(trait):units,
> > > verbose=FALSE,
> > > thin = 100,
> > > burnin = 3000,
> > > nitt = 103000,
> > > saveX=TRUE, saveZ=TRUE, saveXL=TRUE, pr=TRUE, pl=FALSE,
> > > data = s25h)
> > >
> > > summary(mj)
> > >
> > > # Iterations = 3001:102901
> > > # Thinning interval = 100
> > > # Sample size = 1000
> > > #
> > > # DIC: 4811.791
> > > #
> > > # G-structure: ~idh(trait):group1
> > > #
> > > # post.mean l-95% CI u-95% CI eff.samp
> > > # traity.group1 0.4307 0.1351 0.9281 10.17
> > > # traitzi_y. group1 4.3196 2.1216 7.4310 31.26
> > > #
> > > # ~idh(trait):group2
> > > #
> > > # post.mean l-95% CI u-95% CI eff.samp
> > > # traity. group2 0.4233 0.2341 0.6781 30.81
> > > # traitzi_y. group2 3.5497 1.2365 6.1525 26.39
> > > #
> > > # R-structure: ~idh(trait):units
> > > #
> > > # post.mean l-95% CI u-95% CI eff.samp
> > > # traity.units 0.02393 0.002833 0.06621 10.58
> > > # traitzi_y.units 1.00000 1.000000 1.00000 0.00
> > > #
> > > # Location effects: y ~ trait - 1 + at.level(trait, 1):(x1 + x2 + x3 + x4 + x5 + x6 + x7 + offset)
> > > #
> > > # post.mean l-95% CI u-95% CI eff.samp pMCMC
> > > # traity -4.3823820 -6.1496186 -2.6424402 23.592 <0.001 ***
> > > # traitzi_y 3.4696204 2.6430476 4.1392235 1.922 <0.001 ***
> > > # at.level(trait, 1):x1 -0.0498043 -0.2192051 0.1097667 16.979 0.522
> > > # at.level(trait, 1):x2M -0.2088408 -0.4535085 0.0440055 8.727 0.088 .
> > > # at.level(trait, 1):x31 0.1422342 -0.1473884 0.4199985 11.521 0.288
> > > # at.level(trait, 1):x4 0.0007054 -0.0030953 0.0043456 24.299 0.680
> > > # at.level(trait, 1):x5 0.1131704 0.0647184 0.1676469 26.621 <0.001 ***
> > > # at.level(trait, 1):x6 -0.0128734 -0.0483344 0.0306350 13.599 0.588
> > > # at.level(trait, 1):x7 0.0102356 -0.0276141 0.0540893 40.746 0.680
> > > # at.level(trait, 1):offset 1.3511873 0.6963525 2.1299075 13.216 <0.001 ***
> > > # ---
> > > # Signif. codes: 0 �***� 0.001 �**� 0.01 �*� 0.05 �.� 0.1 � � 1
> > >
> > > I would like to increase my effective samples, but I am not sure which way to go. I tried increasing the NITT to 503000, but the effective samples actually got worse. Is there anything else I could do? I plan on dropping some variables from the model, but if I were to proceed with the model above, what could I have done better?
> > >
> > > Thanks in advance!
> > > DNM
> > > <http://aka.ms/weboutlook>
> > >
> > > [[alternative HTML version deleted]]
> > >
> >
> > _______________________________________________
> > R-sig-mixed-models at r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
> R-sig-mixed-models Info Page - stat.ethz.ch<https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models>
> stat.ethz.ch
> Your email address: Your name (optional): You may enter a privacy password below. This provides only mild security, but should prevent others from messing ...
>
>
>
> >
>
More information about the R-sig-mixed-models
mailing list