J'essaie d'utiliser à lme
partir du nlme
package pour répliquer les résultats des aov
ANOVA à mesures répétées. Je l'ai fait pour une expérience de mesures répétées à un facteur et pour une expérience à deux facteurs avec un facteur inter-sujets et un facteur intra-sujets, mais j'ai du mal à le faire pour une expérience à deux facteurs avec deux à l'intérieur -sous les facteurs.
Un exemple est illustré ci-dessous. A
et B
sont des facteurs à effet fixe et subject
est un facteur à effet aléatoire.
set.seed(1)
d <- data.frame(
Y = rnorm(48),
subject = factor(rep(1:12, 4)),
A = factor(rep(1:2, each=24)),
B = factor(rep(rep(1:2, each=12), 2)))
summary(aov(Y ~ A*B + Error(subject/(A*B)), data=d)) # Standard repeated measures ANOVA
library(nlme)
# Attempts:
anova(lme(Y ~ A*B, data=d, random = ~ 1 | subject)) # not same as above
anova(lme(Y ~ A*B, data=d, random = ~ 1 | subject/(A+B))) # gives error
Je ne pouvais pas voir d'explication à ce sujet dans le livre de Pinheiro et Bates, mais je l'ai peut-être ignoré.
la source
aov
appel OPs est simplement une conception standard à mesures répétées, que l'on analyserait avec lmer aslmer(Y~A*B+(1|subject))
. (Bien que voir également cette réponse pour des modèles plus compliqués qui permettent d'estimer la variance et les corrélations de l'effet entre les S: stats.stackexchange.com/questions/13166/rs-lmer-cheat-sheet/… )lmer
mon code ci-dessus est correct. Votrelmer
code n'a qu'un seul effet aléatoire. Ce qui est correct dépendra du contexte.Votre première tentative est la bonne réponse si c'est tout ce que vous essayez de faire. nlme () définit les composants entre et à l'intérieur, vous n'avez pas besoin de les spécifier.
Le problème que vous rencontrez n'est pas parce que vous ne savez pas comment spécifier le modèle, c'est parce que les mesures répétées ANOVA et les effets mixtes ne sont pas la même chose. Parfois, les résultats de l'ANOVA et du modèle d'effets mixtes correspondent. C'est particulièrement le cas lorsque vous agrégez vos données comme vous le feriez pour une ANOVA et calculez les deux à partir de cela. Mais généralement, une fois fait correctement, alors que les conclusions peuvent être similaires, les résultats ne sont presque jamais les mêmes. Vos données d'exemple ne sont pas comme de vraies mesures répétées où vous avez souvent des réplications de chaque mesure dans S. Lorsque vous effectuez une ANOVA, vous agrégez généralement ces réplications pour obtenir une estimation de l'effet pour chaque sujet. Dans la modélisation d'effets mixtes, vous ne faites rien de tel. Vous travaillez avec les données brutes. Quand tu fais ça, tu '
[en passant, utiliser lmer () (du package lme4) au lieu de lme () me donne des valeurs SS et MS qui correspondent exactement à l'ANOVA pour les effets dans votre exemple, c'est juste que les F sont différents]
la source