Michaƫl Coeurdassier
2006-Mar-22 11:04 UTC
[R] post hoc comparison following with multcomp?
Dear R community, I would like to check differences between treatment (Trait) following a glm. From R help list, I tried in the following way using the multcom library. Please, is it a correct manner to do post hoc comparison with the data below. Thank you in advance. Sincerely *> tabp<-read.delim("ponteM1.txt")* *> tabp* Trait totponte 1 T 10 2 T 11 3 T 11 4 T 9 5 T 7 6 T 7 7 T 9 8 T 12 9 T 9 10 T 10 11 M 9 12 M 10 13 M 8 14 M 8 15 M 10 16 M 8 17 M 8 18 M 9 19 M 11 20 M 7 21 F 8 22 F 8 23 F 5 24 F 9 25 F 5 26 F 7 27 F 5 28 F 7 29 F 6 30 F 3 *> attach(tabp)* *> glm1<-glm(totponte~Trait,family=poisson)* ** *> anova(glm1,test="F")* Model: poisson, link: log Response: totponte Terms added sequentially (first to last) Df Deviance Resid. Df Resid. Dev F Pr(>F) NULL 29 16.3879 Trait 2 7.1770 27 9.2109 3.5885 0.02764 * * * *> library(multcomp)* *> (coefglm1<-coef(glm1))* (Intercept) TraitM TraitT 1.8405496 0.3342021 0.4107422 *> (vc.trait<-vcov(glm1))* (Intercept) TraitM TraitT (Intercept) 0.01587301 -0.01587301 -0.01587301 TraitM -0.01587301 0.02723665 0.01587301 TraitT -0.01587301 0.01587301 0.02639933 *> (CM<-contrMat(table(tabp$Trait),type="Tukey"))* F M T M-F -1 1 0 T-F -1 0 1 T-M 0 -1 1 * * *> csimint(coefglm1,df=27,covm=vc.trait,cmatrix=CM)* Simultaneous confidence intervals: user-defined contrasts 95 % confidence intervals Estimate 2.5 % 97.5 % M-F -1.506 -2.177 -0.836 T-F -1.430 -2.097 -0.763 T-M 0.077 -0.286 0.439 --------------- Micha?l COEURDASSIER, PhD Department of Environmental Biology UsC INRA EA3184MRT Institute for Environmental Sciences and Technology University of Franche-Comte Place Leclerc 25030 Besan?on cedex FRANCE Tel : +33 (0)381 665 741 Fax : +33 (0)381 665 797 E-m at il: michael.coeurdassier at univ-fcomte.fr http://lbe.univ-fcomte.fr/
Your use of the multcomp package looks plausible to me (though I certainly did not check every detail). Do you have any specific concerns? [Also, have you reviewed vignette("Rmc")?] And have you considered the plotting, e.g.: plot(csimint(coefglm1,df=27,covm=vc.trait,cmatrix=CM)) hope this helps. spencer graves Micha?l Coeurdassier wrote:> Dear R community, > > I would like to check differences between treatment (Trait) following a > glm. From R help list, I tried in the following way using the multcom > library. Please, is it a correct manner to do post hoc comparison with > the data below. > > Thank you in advance. Sincerely > > *> tabp<-read.delim("ponteM1.txt")* > *> tabp* > Trait totponte > 1 T 10 > 2 T 11 > 3 T 11 > 4 T 9 > 5 T 7 > 6 T 7 > 7 T 9 > 8 T 12 > 9 T 9 > 10 T 10 > 11 M 9 > 12 M 10 > 13 M 8 > 14 M 8 > 15 M 10 > 16 M 8 > 17 M 8 > 18 M 9 > 19 M 11 > 20 M 7 > 21 F 8 > 22 F 8 > 23 F 5 > 24 F 9 > 25 F 5 > 26 F 7 > 27 F 5 > 28 F 7 > 29 F 6 > 30 F 3 > > *> attach(tabp)* > *> glm1<-glm(totponte~Trait,family=poisson)* ** > *> anova(glm1,test="F")* > Model: poisson, link: log > Response: totponte > Terms added sequentially (first to last) > > Df Deviance Resid. Df Resid. Dev F Pr(>F) > NULL 29 16.3879 > Trait 2 7.1770 27 9.2109 3.5885 0.02764 * > * * > *> library(multcomp)* > *> (coefglm1<-coef(glm1))* > (Intercept) TraitM TraitT > 1.8405496 0.3342021 0.4107422 > > *> (vc.trait<-vcov(glm1))* > (Intercept) TraitM TraitT > (Intercept) 0.01587301 -0.01587301 -0.01587301 > TraitM -0.01587301 0.02723665 0.01587301 > TraitT -0.01587301 0.01587301 0.02639933 > > *> (CM<-contrMat(table(tabp$Trait),type="Tukey"))* > F M T > M-F -1 1 0 > T-F -1 0 1 > T-M 0 -1 1 > * * > *> csimint(coefglm1,df=27,covm=vc.trait,cmatrix=CM)* > Simultaneous confidence intervals: user-defined contrasts > 95 % confidence intervals > > Estimate 2.5 % 97.5 % > M-F -1.506 -2.177 -0.836 > T-F -1.430 -2.097 -0.763 > T-M 0.077 -0.286 0.439 > > > --------------- > Micha?l COEURDASSIER, PhD > Department of Environmental Biology > UsC INRA EA3184MRT > Institute for Environmental Sciences and Technology > > University of Franche-Comte > Place Leclerc > 25030 Besan?on cedex > FRANCE > Tel : +33 (0)381 665 741 > Fax : +33 (0)381 665 797 > > E-m at il: michael.coeurdassier at univ-fcomte.fr > http://lbe.univ-fcomte.fr/ > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html