Ich habe ein paar gemischten Effekte für Modelle (insbesondere Längs Modelle) mit lme4
in R
möchte aber wirklich um die Modelle beherrschen und den Code, der mit sich geht.
Bevor ich jedoch mit beiden Beinen eintauche (und ein paar Bücher kaufe), möchte ich sicher sein, dass ich die richtige Bibliothek lerne. Ich habe es lme4
bis jetzt verwendet, weil ich es einfach einfacher fand als nlme
, aber wenn nlme
es für meine Zwecke besser ist, sollte ich es verwenden.
Ich bin mir sicher, dass keines von beiden auf vereinfachende Weise "besser" ist, aber ich würde einige Meinungen oder Gedanken schätzen. Meine Hauptkriterien sind:
- Einfach zu bedienen (Ich bin ein ausgebildeter Psychologe und habe keine besonderen Kenntnisse in Statistik oder Codierung, aber ich lerne)
- gute Features zum Anpassen von Längsschnittdaten (wenn es hier einen Unterschied gibt - aber dafür benutze ich sie hauptsächlich)
- Gute (leicht zu interpretierende) grafische Zusammenfassungen, auch hier bin ich mir nicht sicher, ob es einen Unterschied gibt, aber ich erstelle häufig Grafiken für Leute, die noch weniger technisch sind als ich () aus diesem Grund).
Hoffe wie immer, dass diese Frage nicht zu vage ist, und danke im Voraus für jede Weisheit!
quelle
lme4
Sie in entweder eine diagonale Kovarianzstruktur (dh unabhängige Zufallseffekte) oder unstrukturierte Kovarianzmatrizen (dh alle Korrelationen müssen geschätzt werden) oder teilweise diagonale, teilweise unstrukturierte Kovarianzmatrizen für die Zufallseffekte angeben. Ich möchte auch einen dritten Unterschied in den Fähigkeiten hinzufügen, der für viele longitudinale Datensituationen relevanter sein kann:nlme
Geben Sie Varianz-Kovarianz-Strukturen für die Residuen an (dh räumliche oder zeitliche Autokorrelation oder Heteroskedastizität),lme4
nicht.lme4
erlaubt es, verschiedene VC-Strukturen zu wählen. Es wäre besser, wenn Sie es in Ihre eigene Antwort einfügen, zusammen mit anderen Ideen, die Sie vielleicht haben. Ich werde stimmen. Übrigens habe ich auch gemerkt, dasslmList()
es auch in gibtlme4
. Ich erinnere mich an eine Diskussion darüber bei R-sig-ME.Wie bereits erwähnt, besteht der Hauptunterschied darin, welche Art von Varianz-Kovarianz-Struktur Sie für die Zufallseffekte angeben können. In können
lme4
Sie entweder angeben:~ (1 | group)+ (0 + x1 | group) + (0 + x2 | group)
)~ (1 + x1 + x2 | group)
)y ~ (1 + x1 | group) + (0 + x2 | group)
wobei Sie eine Korrelation zwischen dem zufälligen Schnittpunkt und der zufälligen Steigung fürx1
, aber keine Korrelation zwischen der zufälligen Steigung fürx2
und dem zufälligen Schnittpunkt und zwischen der zufälligen Steigung fürx2
und der zufälligen Steigung für schätzen würdenx1
).nlme
bietet eine viel breitere Klasse von Kovarianzstrukturen für die zufälligen Effekte. Ich habe jedoch die Erfahrung gemacht, dass die Flexibilitätlme4
für die meisten Anwendungen ausreicht.Ich würde auch einen dritten Unterschied in Funktionen hinzufügen , die für viele Longitudinaldaten Situationen mehr relevant sein können:
nlme
Lassen Sie uns Ihnen Varianz-Kovarianz - Strukturen für die Residuen (dh räumliche oder zeitliche Autokorrelation oder Heteroskedastie oder Kovariable abhängige Variabilität) im angebenweights
Argument (cf?varFunc
), wobeilme4
nur feste Vorgewichtungen für die Beobachtungen zulässig sind.Ein vierter Unterschied besteht darin, dass es schwierig sein kann,
nlme
(teilweise) gekreuzte Zufallseffekte anzupassen, obwohl dies kein Problem darstelltlme4
.Sie werden wahrscheinlich in Ordnung sein, wenn Sie dabei bleiben
lme4
.quelle
Andere haben die Unterschiede sehr gut zusammengefasst. Mein Eindruck ist, dass
lme4
es sich eher für Cluster-Datensätze eignet, insbesondere wenn Sie gekreuzte Zufallseffekte verwenden müssen. Für wiederholte Bemaßungen (einschließlich vieler Längsdesigns) bietetnlme
sich das Werkzeug jedoch an, da nurnlme
die Angabe einer Korrelationsstruktur für die Residuen unterstützt wird. Verwenden Sie dazu das Argumentcorrelations
odercor
für eincorStruct
Objekt. Außerdem können Sie die Heteroskedastizität mithilfe einesvarFunc
Objekts modellieren .quelle
Tatsächlich gibt es in R eine Reihe von Paketen, um Modelle mit gemischten Effekten über
lme4
und hinaus anzupassennlme
. Es gibt ein nettes Wiki der R Special Interest Group für gemischte Models, das eine sehr nette FAQ und eine Seite zum Vergleichen der verschiedenen Pakete enthält .Was meine Meinung zur tatsächlichen Verwendung von
lme4
und angehtnlme
: Ich habe festgestelltlme4
, dass die Verwendung aufgrund der eher direkten Erweiterung der grundlegenden R-Formelsyntax im Allgemeinen einfacher ist. (Wenn Sie mit verallgemeinerten additiven Modellen arbeiten müssen, dann erweitert dasgamm4
Paket diese Syntax um einen weiteren Schritt und Sie haben eine schöne glatte Lernkurve.) Wie bereits erwähnt,lme4
können Sie mit verallgemeinerten Modellen umgehen (andere Verknüpfungsfunktionen und Fehlerverteilungen), währendnlme
Die Konzentration auf die Gaußsche Verknüpfungsfunktion ermöglicht es, einige Dinge zu tun, die im allgemeinen Fall sehr schwierig sind (Spezifizierung der Kovarianzstruktur und bestimmte Dinge, die von der Berechnung der Freiheitsgrade abhängen, wie p-Werte, zu deren Bewegung ich Sie ermutige Weg von!).quelle