Ich versuche, eine wiederholte Messung von Anova in R durchzuführen, gefolgt von einigen spezifischen Kontrasten für diesen Datensatz. Ich denke, der richtige Ansatz wäre,
Anova()
das Fahrzeugpaket zu verwenden.
Veranschaulichen
wir meine Frage ?Anova
anhand des Beispiels, das aus der Verwendung der
OBrienKaiser
Daten stammt (Anmerkung: Ich habe den Geschlechtsfaktor aus dem Beispiel weggelassen):
Wir haben ein Design mit einem Faktor zwischen Subjekten, Behandlung (3 Ebenen: Kontrolle, A, B) und 2 Wiederholungen -Maßnahmen (innerhalb der Probanden) Faktoren, Phase (3 Stufen: Vortest, Posttest, Follow-up) und Stunde (5 Stufen: 1 bis 5).
Die Standard-ANOVA-Tabelle ist gegeben durch (im Unterschied zu Beispiel (Anova) habe ich auf Typ 3-Quadratsummen umgestellt, das ist, was mein Feld will):
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)
Stellen Sie sich nun vor, dass die Interaktion höchster Ordnung signifikant gewesen wäre (was nicht der Fall ist), und wir möchten sie mit den folgenden Kontrasten weiter untersuchen:
Gibt es einen Unterschied zwischen Stunde 1 und 2 gegenüber Stunde 3 (Kontrast 1) und zwischen Stunde 1 und 2 versus Stunden 4 & 5 (Kontrast 2) in den Behandlungsbedingungen (A & B zusammen)?
Mit anderen Worten, wie spezifiziere ich diese Kontraste:
((treatment %in% c("A", "B")) & (hour %in% 1:2))
gegen((treatment %in% c("A", "B")) & (hour %in% 3))
((treatment %in% c("A", "B")) & (hour %in% 1:2))
gegen((treatment %in% c("A", "B")) & (hour %in% 4:5))
Meine Idee wäre, eine weitere ANOVA durchzuführen, die die nicht benötigte Behandlungsbedingung (Kontrolle) außer Kraft setzt:
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)
Ich habe jedoch immer noch keine Ahnung, wie ich die entsprechende subjektinterne Kontrastmatrix einrichten soll, um die Stunden 1 & 2 mit 3 und 1 & 2 mit 4 & 5 zu vergleichen. Und ich bin mir nicht sicher, ob das Weglassen der nicht benötigten Behandlungsgruppe tatsächlich eine gute Idee ist, da es den allgemeinen Fehlerausdruck ändert.
Bevor Anova()
ich loslegte, dachte ich auch darüber nach lme
. Es gibt jedoch kleine Unterschiede in den F- und p-Werten zwischen der Lehrbuch-ANOVA und dem Ergebnis, das anove(lme)
aufgrund möglicher negativer Abweichungen in der Standard-ANOVA (die nicht zulässig sindlme
) zurückgegeben wird. In ähnlicher Weise hat mich jemand darauf hingewiesen gls
, dass es möglich ist, ANOVA mit wiederholten Messungen anzupassen, es gibt jedoch kein Kontrastargument.
Zur Verdeutlichung: Ich möchte einen F- oder T-Test (unter Verwendung von Quadratsummen vom Typ III), der beantwortet, ob die gewünschten Kontraste signifikant sind oder nicht.
Aktualisieren:
Ich habe bereits eine sehr ähnliche Frage zu R-help gestellt, auf die es keine Antwort gab .
Eine ähnliche Frage wurde vor einiger Zeit bei R-help gestellt. Die Antworten lösten jedoch auch das Problem nicht.
Update (2015):
Da diese Frage immer noch eine gewisse Aktivität hervorruft , kann das Spezifizieren von Thesen und im Grunde aller anderen Kontraste mit der afex
Verpackung in Kombination mit der lsmeans
Verpackung, wie in der afex-Vignette beschrieben, jetzt relativ einfach durchgeführt werden .
treatment
, 3) für jede Person durchschnittlich über Ebenen vonprePostFup
, 4) für jede Person durchschnittlich über Stunden 1,2 (= Datengruppe 1) ignorieren sowie über Stunden 3,4 (= Datengruppe 2), 5) führen Sie einen t-Test für 2 abhängige Gruppen durch. Da Maxwell & Delaney (2004) und Kirk (1995) davon abraten, Kontraste mit einem gepoolten Fehlerbegriff in Innendesigns zu bilden, könnte dies eine einfache Alternative sein.Antworten:
Diese Methode wird im Allgemeinen als "altmodisch" angesehen, so dass die Syntax möglicherweise schwierig ist und ich vermute, dass weniger Leute wissen, wie man die anova-Befehle manipuliert, um das zu erhalten, was Sie wollen. Die gebräuchlichste Methode ist die Verwendung
glht
eines Wahrscheinlichkeitsmodells vonnlme
oderlme4
. (Ich kann mich aber gerne durch andere Antworten als falsch erweisen.)Das heißt, wenn ich das tun müsste, würde ich mich nicht um die Anova-Befehle kümmern. Ich würde einfach das äquivalente Modell unter Verwendung von
lm
anpassen, den richtigen Fehlerterm für diesen Kontrast auswählen und den F-Test selbst berechnen (oder äquivalent t testen, da es nur 1 df gibt). Dies setzt voraus, dass alles ausgeglichen ist und eine Kugelform aufweist. Wenn Sie dies jedoch nicht haben, sollten Sie wahrscheinlich ohnehin ein Wahrscheinlichkeitsmodell verwenden. Mit den Greenhouse-Geiser- oder Huynh-Feldt-Korrekturen, die (meiner Meinung nach) dieselbe F-Statistik verwenden, aber den df-Wert des Fehlerterms ändern, können Sie die Nicht-Sphärizität möglicherweise etwas korrigieren.Wenn Sie wirklich verwenden möchten
car
, finden Sie möglicherweise die Heplot- Vignetten hilfreich. Sie beschreiben, wie die Matrizen imcar
Paket definiert sind.Mit der Caracal-Methode (für die Kontraste 1 & 2 - 3 und 1 & 2 - 4 & 5) erhalte ich
So würde ich die gleichen p-Werte erhalten:
Verändern Sie die Form der Daten in ein Langformat und führen Sie sie aus
lm
, um alle SS-Begriffe abzurufen.Erstellen Sie eine alternative Kontrastmatrix für das Stundensemester.
Überprüfen Sie, ob meine Kontraste die gleiche SS wie die Standardkontraste (und die gleichen wie beim Vollmodell) ergeben.
Holen Sie sich die SS und df nur für die beiden Kontraste, die ich will.
Holen Sie sich die p-Werte.
Passen Sie optional die Sphärizität an.
quelle
heplots
Vignette, das ist wirklich eine schöne Zusammenfassung dessen, was im Hinblick auf das allgemeine lineare Modell vor sich geht.Wenn Sie Kontraste mit dem zusammengefassten Fehlerausdruck aus der entsprechenden ANOVA verwenden möchten / müssen, können Sie Folgendes tun. Leider wird das lange dauern, und ich weiß nicht, wie ich das bequemer machen soll. Dennoch denke ich, dass die Ergebnisse korrekt sind, da sie gegen Maxwell & Delaney verifiziert sind (siehe unten).
Sie möchten Gruppen Ihrer ersten innerhalb des Faktors
hour
in einem SPF-p.qr-Design vergleichen (Notation von Kirk (1995)): Split-Plot-Factorial-Design 1 zwischen Faktortreatment
mit p-Gruppen, zuerst innerhalb des Faktorshour
mit q-Gruppen, zweitens innerhalb des FaktorsprePostFup
mit r Gruppen). Das Folgende geht vontreatment
Gruppen gleicher Größe und Sphärizität aus.Beachten Sie zunächst, dass der Haupteffekt für
hour
nach dem Mitteln derselbe istprePostFup
, und wechseln Sie daher zum einfacheren SPF-pq-Design, das nurtreatment
undhour
als IVs enthält .Beachten Sie nun, dass in der SPF-pq-ANOVA der Effekt für
hour
die Interaktion getestet wirdid:hour
, dh diese Interaktion liefert den Fehlerterm für den Test. Jetzt können die Kontraste fürhour
Gruppen wie bei einer Einbahnstraßen-ANOVA durch einfaches Ersetzen des Fehlerbegriffs und entsprechender Freiheitsgrade getestet werden. Der einfache Weg, um die SS und df dieser Interaktion zu erhalten, besteht darin, das Modell mit anzupassenlm()
.Aber lassen Sie uns hier auch alles manuell berechnen.
hour:id
Wechselwirkung (der geeignete Fehlerterm).Für mehrere Vergleiche müsste man überlegenα -Korrekturmethoden, zB Bonferroni.
Die entsprechenden Berechnungen für das Beispiel von Maxwell & Delaney (2004) auf S. 22. 599f finden Sie hier . Beachten Sie, dass M & D den F-Wert berechnet. Um zu sehen, dass die Ergebnisse identisch sind, müssen Sie den Wert für die t-Statistik quadrieren. Dieser Code enthält auch die mitϵ^ Korrekturen für den Haupteffekt des Innenfaktors.
Anova()
from durchgeführte Analysecar
sowie eine manuelle Berechnung derquelle