Die folgende Frage ist für mich seit einiger Zeit eine dieser heiligen Fragen, ich hoffe, jemand kann einen guten Rat geben.
Ich möchte eine nicht-parametrische wiederholte Multiway-Anova mit R durchführen.
Ich habe einige Zeit online gesucht und gelesen und konnte bisher nur für einige Fälle Lösungen finden: Friedman-Test für nichtparametrische Einweg-Wiederholungsmessungen anova, ordinale Regression mit {car} Anova-Funktion für nichtparametrische Mehrweg-Messungen Anova und so weiter. Die Teillösungen sind NICHT das, wonach ich in diesem Fragenthread suche. Ich habe meine bisherigen Ergebnisse in einem Beitrag zusammengefasst, den ich vor einiger Zeit veröffentlicht habe (Titel: ANOVA mit wiederholten Messungen mit R (Funktionen und Tutorials) , falls es jemandem helfen sollte).
Wenn das, was ich online gelesen habe, wahr ist, kann diese Aufgabe mit einem gemischten Ordinalen Regressionsmodell (auch bekannt als: Proportional Odds Model) gelöst werden.
Ich habe zwei Pakete gefunden, die relevant erscheinen, aber keine Vignette zu diesem Thema gefunden:
Ich war also neu in dem Thema und hoffte auf ein paar Anweisungen von den Leuten hier.
Gibt es Tutorials / Lesevorschläge zu diesem Thema? Noch besser, kann jemand einen einfachen Beispielcode vorschlagen, wie dies in R ausgeführt und analysiert werden soll (z. B .: "Nicht parametrische wiederholte Messungen mit Mehrweg-Anova")?
quelle
Antworten:
Das ez- Paket, dessen Autor ich bin, hat eine Funktion namens ezPerm (), die einen Permutationstest berechnet, aber Interaktionen wahrscheinlich nicht richtig ausführt (die Dokumentation gibt dies zu). Die neueste Version verfügt über eine Funktion namens ezBoot (), mit der Sie ein Bootstrap-Resampling durchführen können, bei dem wiederholte Messungen (durch erneutes Abtasten von Subjekten und dann innerhalb von Subjekten) berücksichtigt werden. Dabei werden entweder herkömmliche Zellenmittel als Vorhersagestatistik oder gemischte Effektmodelle zur Erstellung von Vorhersagen verwendet für jede Zelle im Design. Ich bin mir immer noch nicht sicher, wie "nicht parametrisch" die Bootstrap-CIs aus gemischten Effektmodellvorhersagen sind. Ich habe die Intuition, dass sie vernünftigerweise als nicht parametrisch angesehen werden können, aber mein Vertrauen in diesen Bereich ist gering, da ich immer noch etwas über Mixed-Effects-Modelle lerne.
quelle
aovp
Alternative - aus dem verwaistenlmperm
Paket - erzeugt enorme Variationen für die p-Werte, siehe dies . Ich habe ein paar Fragen: Wo finde ich bibliografische Referenzen für die Umsetzung vonezPerm
? Wie kann ich interpretieren, dass die Funktion Interaktionen wahrscheinlich nicht richtig ausführt ? Was könnte in diesem Fall ein Post-hoc-Test sein? Vielen Dank!ezPerm( data = DATA, dv = DV, wid = WID, within = interaction(A,B), perms = 1e3)
macht es etwa Sinn, noch einmal zu überprüfen, ob die Interaktion signifikant ist?Im Zweifelsfall Bootstrap! Wirklich, ich kenne keine Dosenprozedur, um mit einem solchen Szenario fertig zu werden.
Bootstrapping ist eine allgemein anwendbare Methode, um aus den vorliegenden Daten einige Fehlerparameter zu generieren. Anstatt sich auf die typischen parametrischen Annahmen zu verlassen, nutzen Bootstrap-Verfahren die Merkmale der Stichprobe, um eine empirische Verteilung zu generieren, mit der Ihre Stichprobenschätzungen verglichen werden können.
Google-Gelehrter ist Gold ... es wurde schon mal gemacht ... mindestens einmal.
Lunneborg, Clifford E .; Tousignant, James P .; 1985 "Efrons Bootstrap mit Anwendung auf das Repeated Measures Design." Multivariate Verhaltensforschung; Apr85, Vol. 20 Issue 2, S. 161, 18p
quelle
In einigen Foren und Mailinglisten wird ein "Trick" erwähnt - ich habe ihn auch in Joop Hox 'Buch "Multilevel Analysis" (2. Auflage, 2010), S. 189, erwähnt.
Die Idee ist: Sie formatieren Ihre langen Daten in einen langen Datensatz, in dem Sie einen neuen DV erstellen, der alle Ihre DV-Antworten enthält, und eine Indexvariable verwenden, die Informationen über die Art der DVs enthält, um dieses Ergebnis vorherzusagen.
Angenommen, Sie haben 9 Depressionssymptome (Ordnungszahl), 2 Messpunkte und 300 Probanden. Während Sie also 300 Zeilen in Ihrem normalen Dataset und in Ihrem langen Dataset 600 Zeilen haben, hat dieses neue Dataset 9 (Symptome) x 2 (Zeit) x 300 (Probanden) Zeilen.
Die neue DV-Variable "Symptome" enthält nun die Symptomschwere der Teilnehmer an 9 Symptomen, die Variablen "Index" enthält die Information über die Art des Symptoms (1 bis 9), und dann gibt es die beiden Variablen "Zeit" und "Zeit". Benutzeridentifikation".
Sie können das
ordinal
Paket jetzt verwenden , um dies auszuführen.In meinem speziellen Fall war ich daran interessiert, ob es eine signifikante Wechselwirkung zwischen Index und Zeit gibt. Deshalb habe ich ein weiteres Modell ausgeführt und diese verglichen:
CLMM2 verwendet ein zufälliges Intercept-Modell (meines Wissens führt das Paket
ordinal
keine zufälligen Steigungen durch). Wenn Sie kein zufälliges Intercept-Modell verwenden, können Sie die Modelle stattdessen mit CLM ausführen. Beispiel:quelle
clmm2(symptoms ~ index*time, random=UserID, data = data, Hess=TRUE, nAGQ=10) anova(m1,m2)
. Wissen Sie zufällig, wie Sie dies mit der neuen Funktion clmm ausdrücken können? Ich bin mir bei der Schreibweise nicht sicher.