Cela peut ressembler à un peu d'auto-promotion (et je suppose que oui). Mais j'ai développé un package lsmeans pour R (disponible sur CRAN) qui est conçu pour gérer exactement ce genre de situation. Voici comment cela fonctionne pour votre exemple:
> sample.data <- data.frame(IV=rep(1:4,each=20),DV=rep(c(-3,-3,1,3),each=20)+rnorm(80))
> sample.aov <- aov(DV ~ factor(IV), data = sample.data)
> library("lsmeans")
> (sample.lsm <- lsmeans(sample.aov, "IV"))
IV lsmean SE df lower.CL upper.CL
1 -3.009669 0.2237448 76 -3.4552957 -2.564043
2 -3.046072 0.2237448 76 -3.4916980 -2.600445
3 1.147080 0.2237448 76 0.7014539 1.592707
4 3.049153 0.2237448 76 2.6035264 3.494779
> contrast(sample.lsm, list(mycon = c(-3,-1,1,3)))
contrast estimate SE df t.ratio p.value
mycon 22.36962 1.000617 76 22.356 <.0001
Vous pouvez spécifier des contrastes supplémentaires dans la liste si vous le souhaitez. Pour cet exemple, vous obtiendrez les mêmes résultats avec le contraste polynomial linéaire intégré:
> con <- contrast(sample.lsm, "poly")
> con
contrast estimate SE df t.ratio p.value
linear 22.369618 1.0006172 76 22.356 <.0001
quadratic 1.938475 0.4474896 76 4.332 <.0001
cubic -6.520633 1.0006172 76 -6.517 <.0001
Pour confirmer cela, notez que la "poly"
spécification lui ordonne d'appeler poly.lsmc
, ce qui produit ces résultats:
> poly.lsmc(1:4)
linear quadratic cubic
1 -3 1 -1
2 -1 -1 3
3 1 -1 -3
4 3 1 1
Si vous souhaitez effectuer un test conjoint de plusieurs contrastes, utilisez la test
fonction avec joint = TRUE
. Par exemple,
> test(con, joint = TRUE)
Cela produira un essai de "type III". Contrairement à car::Anova()
cela, il le fera correctement quel que soit le codage de contraste utilisé dans l'étape d'ajustement du modèle. En effet, les fonctions linéaires testées sont spécifiées directement plutôt qu'implicitement via la réduction de modèle. Une caractéristique supplémentaire est qu'un cas où les contrastes testés sont linéairement dépendants est détecté et que les statistiques de test et les degrés de liberté corrects sont produits.