Antworten:
Die Standardvarianz-Kovarianz-Struktur ist unstrukturiert - das heißt, die einzige Einschränkung für die Varianz-Kovarianz-Matrix für einen Vektor-Zufallseffekt mit Ebenen ist, dass sie positiv definit ist. Separate zufällige Effektterme werden jedoch als unabhängig betrachtet. Wenn Sie also (z. B.) ein Modell mit zufälligem Achsenabschnitt und Steigung anpassen möchten, bei dem Achsenabschnitt und Steigung nicht korreliert sind (nicht unbedingt eine gute Idee), können Sie die Formel verwenden , bei der es sich um die handelt Gruppierungsfaktor; das(1|g) + (0+x|g)
g
0
im zweiten Term unterdrückt der Achsenabschnitt. Wenn Sie unabhängige Parameter einer kategorialen Variablen anpassen möchten (wiederum möglicherweise fraglich), müssen Sie wahrscheinlich numerische Dummy-Variablen von Hand erstellen. Sie können eine zusammensetzungssymmetrische Varianz-Kovarianz-Struktur erstellen (obwohl nur mit nicht negativen Kovarianzen), indem Sie den Faktor als verschachtelte Gruppierungsvariable behandeln. Wenn zum Beispiel f
ein Faktor ist, dann (1|g/f)
werden gleiche Korrelationen zwischen den Ebenen von angenommen f
.
Für andere / komplexere Varianz-Kovarianz-Strukturen müssen Sie (in R) (1) verwenden nlme
(wobei die pdMatrix
Konstruktoren mehr Flexibilität ermöglichen); (2) Verwendung MCMCglmm
(die eine Vielzahl von Strukturen bietet, einschließlich unstrukturierter, zusammengesetzter Symmetrie, Identität mit unterschiedlichen Varianzen oder Identität mit homogenen Varianzen); (3) Verwenden Sie ein spezielles Paket pedigreemm
, das eine speziell strukturierte Matrix erstellt. Es gibt einen flexLambda
Zweig auf Github, der schließlich mehr Funktionen in diese Richtung bieten möchte.
Ich kann dies anhand eines Beispiels zeigen.
Kovarianzterme werden in derselben Formel wie die festen und zufälligen Effekte angegeben. Kovarianzbegriffe werden durch die Art und Weise angegeben, wie die Formel geschrieben wird.
Beispielsweise:
glmer(y ~ 1 + x1 + (1|g) + (0+x1|g), data=data, family="binomial")
Hier gibt es zwei feste Effekte, die zufällig variieren dürfen, und einen Gruppierungsfaktor g
. Da die beiden zufälligen Effekte in ihre eigenen Begriffe unterteilt sind, ist kein Kovarianzbegriff zwischen ihnen enthalten. Mit anderen Worten wird nur die Diagonale der Varianz-Kovarianz-Matrix geschätzt. Die Null im zweiten Term besagt ausdrücklich, dass kein zufälliger Intercept-Term hinzugefügt oder ein vorhandener zufälliger Intercept mit variiert werden darf x1
.
Ein zweites Beispiel:
glmer(y ~ 1 + x1 + (1+x1|g), data=data, family="binomial")
Hier wird eine Kovarianz zwischen dem Achsenabschnitt und x1
zufälligen Effekten angegeben, da 1 + x1 | g alle im selben Term enthalten sind. Mit anderen Worten werden alle 3 möglichen Parameter in der Varianz-Kovarianz-Struktur geschätzt.
Ein etwas komplizierteres Beispiel:
glmer(y ~ 1 + x1 + x2 + (1+x1|g) + (0+x2|g), data=data, family="binomial")
Hier können der Achsenabschnitt und die x1
zufälligen Effekte zusammen variieren, während eine Nullkorrelation zwischen dem x2
zufälligen Effekt und jedem der beiden anderen auferlegt wird . Wiederum wird a 0
nur dann in den x2
Zufallseffektbegriff aufgenommen, um explizit zu vermeiden, dass ein zufälliger Abschnitt eingeschlossen wird, der mit dem x2
Zufallseffekt übereinstimmt .
xxM
Paket auch eine gute, aber kompliziertere Option ist, die die Modellierung von Strukturgleichungen ermöglicht. xxm.times.uh.edu