Anova/deviance table in glmmADMB
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 [cc'ing to r-sig-mixed-models]
On 12-03-21 12:47 PM, Thomas Merkling wrote:
Le 20/03/2012 22:43, Ben Bolker a ?crit : On 12-03-20 02:32 PM, Thomas Merkling wrote:
Dear Ben and other list members, - Is there any way to produce a Anova/deviance table for a model fitted with glmmADMB ? I used the Anova() function from the car library for glmer models, but it does not seem to work with glmmadmb (I'm using glmmADMB 0.7) and I would like only one p-value for each term and interaction and NOT one p-value for each level of the interaction.
Hmmm. car::Anova() should work now -- I had to add a model.frame() and a df.residual() method for glmmadmb objects. (The df.residual number may be a little dodgy -- I'm not sure I counted the parameters right -- but I don't think it's actually used for much by default, cause you get Wald chi-square tests) The newest version of glmmADMB is 0.7.5.1 -- it may take a little while for r-forge to catch up, and I was having a few dependency issues. If you don't see it there in ~ 24 hours, drop me a line.
I used glmmADMB 0.7 because some models did not converge with
glmmADMB 0.7.2.4 ("function maximizer failed (couldn't find the
STD file)") and I read that with it might work with previous
versions ... which was the case .. until today .... Models that
were fitted without problem yesterday did not convernge today:
"Memory allocation error -- Perhaps you are trying to allocate
too much memory in your program" and "function maximizer
failed (couldn't find the STD file)"
Argh. (That's frustration with software and Murphy's Law, not with you ...) What changed between yesterday and today? You could be running out of memory simply because you have more large objects loaded in your R session (or because you're doing something else memory-intensive on your computer at the same time?), other than that I don't have a good guess. If necessary you can squeeze memory a little bit more by running glmmADMB within R to generate the appropriate files, running the 'glmmadmb' executable outside of R, then going back into R to read the results, but I find it very annoying to work that way.
I was never able to download the package via
install.packages("glmmADMB",
repos="http://r-forge.r-project.org",type="source")
I got a warning :
In getDependencies(pkgs, dependencies, available, lib) : package 'glmmADMB' is not available (for R version 2.14.2)
And on theR-forge packages page for the glmmADMB project <https://r-forge.r-project.org/R/?group_id=847> the build status is "Failed to build" and I never found any source package, but maybe I was not looking at the right place ...
I am still fighting with R-forge. If necessary I will build some more recent versions myself and put them up in the other repository space.
I will have a look tomorrow if things have changed ...
- I also tried to compare nested models via LRT using anova(model1,model2) for glmmADMB models but I didn't get any p-values, it produced NaN, although it apparently calculate the differences in likelihood. Where can this come from ?
This ought to have worked: perhaps you had the models in the wrong order?
I think I did it right .... Here is an example
modmean=glmmadmb(MeanAggr~Date + Age+ Obs+ (1|Nest),family="Gamma",data=YESaggr,verbose=FALSE) modmean1= glmmadmb(MeanAggr~Date + Age+ (1|Nest),family="Gamma",data=YESaggr,verbose=FALSE)
anova(modmean,modmean1) Analysis of Variance Table
Model 1: MeanAggr ~ Date + Age + Obs Model 2: MeanAggr ~ Date + Age NoPar LogLik Df -2logQ P.value 1 9 -726.22 2 5 -731.23 -4 -10.012 Message d'avis : In pchisq(q, df, lower.tail, log.p) : production de NaN
What do you get from anova(modmean1,modmean) ? In general the *simpler* model should come first -- in more recent versions of glmmADMB, the program will rearrange them for you (and warn you).
If is specify "test="Chisq"", I got this error message : Erreur dans x$random : $ operator is invalid for atomic vectors
Yes, in this case glmmADMB is interpreting this argument as another model you want to consider in the nested sequence.
- I tried to use the coefplot2 library (downloaded from http://www.math.mcmaster.ca/bolker/R/src/contrib) as showed on the glmmADMB home page ("getting started with glmmADMB"), but I couldn't use it and got this error message : unable to find an inherited method for function "coefplot2", for signature "glmmadmb". Is it normal ? It worked fine with glmer output.
Can you try getting it from r-forge? Again, if the problem persists let me know. Ben
on theR-forge packages page for the coefplot2 project <https://r-forge.r-project.org/R/?group_id=847> the build status is offline and I got the same error message as for glmmADMB when trying
install.packages("coefplot2",
repos="http://r-forge.r-project.org",type="source")
Double argh. I will try to get this back up. Ben
Cheers, Thomas
Thanks for your help ! Thomas
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJPaivUAAoJED2whTVMEyK92D0H/1OyF3jbQw3QFjeV3XBCBf51 V6lhoCfq4LFyzk5yp6rQG3VG+lSC1xmtc0kjAp9ei/OGYpb9Wogsqu53U8e3uurQ J1z+3XRl7DDlmPcf2DDgrLHirQYa7TqwLIzmpY+g8qBM/qgMbY5RyAm0FuRB2lpj jdBQebHQqKs9ZCa5bW8xBPD6kvNnoFm0H+aGrxORjHRyM1OI+4ye8zmTXHz3CwH/ 8ZaPB6tWbd2h0Ga21YhH4EcTNoqGDs83uf/FGmJcwDtUoc+esOnQ3H/gvqAJdmv5 tz+6IZaQX3dPDzf6/H+bTI61c9lYnWphBPEWQDBFDLMccGDcUzH35GYulQGjJko= =Vm7s -----END PGP SIGNATURE-----