J'essaie d'exécuter une mesure répétée Anova dans R suivie de quelques contrastes spécifiques sur cet ensemble de données. Je pense que la bonne approche serait d'utiliser à
Anova()
partir du package de voiture.
Permet d'illustrer ma question avec l'exemple tiré de l' ?Anova
utilisation des
OBrienKaiser
données (Remarque: j'ai omis le facteur de genre de l'exemple):
Nous avons une conception avec un facteur entre les sujets, le traitement (3 niveaux: contrôle, A, B) et 2 répétés -mesures (au sein des sujets) facteurs, phase (3 niveaux: pré-test, post-test, suivi) et heure (5 niveaux: 1 à 5).
La table ANOVA standard est donnée par (à la différence de l'exemple (Anova), je suis passé au type 3 Sums of Squares, c'est ce que mon domaine veut):
require(car)
phase <- factor(rep(c("pretest", "posttest", "followup"), c(5, 5, 5)),
levels=c("pretest", "posttest", "followup"))
hour <- ordered(rep(1:5, 3))
idata <- data.frame(phase, hour)
mod.ok <- lm(cbind(pre.1, pre.2, pre.3, pre.4, pre.5, post.1, post.2, post.3, post.4, post.5, fup.1, fup.2, fup.3, fup.4, fup.5) ~ treatment, data=OBrienKaiser)
av.ok <- Anova(mod.ok, idata=idata, idesign=~phase*hour, type = 3)
summary(av.ok, multivariate=FALSE)
Maintenant, imaginez que l'interaction d'ordre supérieur aurait été significative (ce qui n'est pas le cas) et nous aimerions l'explorer davantage avec les contrastes suivants:
y a-t-il une différence entre les heures 1 et 2 par rapport aux heures 3 (contraste 1) et entre les heures 1 et 2 par rapport aux heures 4 et 5 (contraste 2) dans les conditions de traitement (A&B ensemble)?
En d'autres termes, comment spécifier ces contrastes:
((treatment %in% c("A", "B")) & (hour %in% 1:2))
contre((treatment %in% c("A", "B")) & (hour %in% 3))
((treatment %in% c("A", "B")) & (hour %in% 1:2))
contre((treatment %in% c("A", "B")) & (hour %in% 4:5))
Mon idée serait d'exécuter une autre ANOVA en omettant la condition de traitement non nécessaire (contrôle):
mod2 <- lm(cbind(pre.1, pre.2, pre.3, pre.4, pre.5, post.1, post.2, post.3, post.4, post.5, fup.1, fup.2, fup.3, fup.4, fup.5) ~ treatment, data=OBrienKaiser, subset = treatment != "control")
av2 <- Anova(mod2, idata=idata, idesign=~phase*hour, type = 3)
summary(av2, multivariate=FALSE)
Cependant, je ne sais toujours pas comment configurer la matrice de contraste intra-sujet appropriée en comparant les heures 1 et 2 à 3 et 1 et 2 à 4 et 5. Et je ne sais pas si l'omission du groupe de traitement non nécessaire est en effet une bonne idée car elle modifie le terme d'erreur global.
Avant de partir, Anova()
je pensais aussi à partir lme
. Cependant, il existe de petites différences dans les valeurs F et p entre l'ANOVA du manuel et ce qui est renvoyé en anove(lme)
raison de possibles écarts négatifs dans l'ANOVA standard (qui ne sont pas autorisés danslme
). De manière similaire, quelqu'un m'a indiqué gls
qui permet d'ajuster des mesures répétées ANOVA, cependant, il n'a aucun argument de contraste.
Pour clarifier: je veux un test F ou t (utilisant des sommes de carrés de type III) qui répond si les contrastes souhaités sont significatifs ou non.
Mise à jour:
J'ai déjà posé une question très similaire sur R-help, il n'y avait pas de réponse .
Une question similaire a été posée sur R-help il y a quelque temps. Cependant, les réponses n'ont pas non plus résolu le problème.
Mise à jour (2015):
Comme cette question génère encore une certaine activité, la spécification des thèses et, fondamentalement, tous les autres contrastes peuvent maintenant être effectués relativement facilement avec le afex
package en combinaison avec le lsmeans
package comme décrit dans la vignette afex .
treatment
, 3) pour chaque personne moyenne sur les niveaux deprePostFup
, 4) pour chaque personne moyenne sur les heures 1,2 (= groupe de données 1) ainsi que sur les heures 3,4 (= groupe de données 2), 5) exécuter le test t pour 2 groupes dépendants. Étant donné que Maxwell et Delaney (2004) ainsi que Kirk (1995) découragent de faire des contrastes avec un terme d'erreur groupé dans les plans internes, cela pourrait être une alternative simple.