Wie kann man die Koeffizienten eines multivariaten gemischten Modells in lme4 ohne Gesamtabschnitt interpretieren?

10

Ich versuche, ein multivariates (dh Mehrfachantwort-) Mischmodell einzubauen R. Abgesehen von den ASReml-rund SabreR-Paketen (für die externe Software erforderlich ist) scheint dies nur in möglich zu sein MCMCglmm. In dem Papier , das die begleitet MCMCglmmPaket (pp.6) beschreibt Jarrod Hadfield den Prozess des Anpassens ein solches Modell , wie wie mehrere Antwortvariablen in ein Langformat variable Umformen und dann die Gesamt intercept unterdrückt wird . Mein Verständnis ist, dass das Unterdrücken des Abschnitts die Interpretation des Koeffizienten für jede Ebene der Antwortvariablen so ändert, dass sie der Mittelwert für diese Ebene ist. Ist es daher vor diesem Hintergrund möglich, ein multivariates gemischtes Modell mit lme4? Zum Beispiel:

data(mtcars)
library(reshape2)
mtcars <- melt(mtcars, measure.vars = c("drat", "mpg", "hp"))
library(lme4)
m1 <- lmer(value ~ -1 + variable:gear + variable:carb + (1 | factor(carb)),
    data = mtcars)
summary(m1)
#  Linear mixed model fit by REML 
#  Formula: value ~ -1 + variable:gear + variable:carb + (1 | factor(carb)) 
#     Data: mtcars 
#   AIC   BIC logLik deviance REMLdev
#   913 933.5 -448.5    920.2     897
#  Random effects:
#   Groups       Name        Variance Std.Dev.
#   factor(carb) (Intercept) 509.89   22.581  
#   Residual                 796.21   28.217  
#  Number of obs: 96, groups: factor(carb), 6
#  
#  Fixed effects:
#                    Estimate Std. Error t value
#  variabledrat:gear  -7.6411     4.4054  -1.734
#  variablempg:gear   -1.2401     4.4054  -0.281
#  variablehp:gear     0.7485     4.4054   0.170
#  variabledrat:carb   5.9783     4.7333   1.263
#  variablempg:carb    3.3779     4.7333   0.714
#  variablehp:carb    43.6594     4.7333   9.224

Wie würde man die Koeffizienten in diesem Modell interpretieren? Würde diese Methode auch für verallgemeinerte lineare gemischte Modelle funktionieren?

Chris
quelle

Antworten:

2

Ihre Idee ist gut, aber in Ihrem Beispiel haben Sie vergessen, unterschiedliche Abschnitte und unterschiedliche zufällige Varianzen für jedes Merkmal zu modellieren, sodass Ihre Ausgabe nicht so interpretiert werden kann, wie sie ist. Ein korrektes Modell wäre:

m1 <- lmer(value ~ -1 + variable + variable:gear + variable:carb + (0 + variable | factor(carb))

In diesem Fall würden Sie die Schätzungen der festen Auswirkungen auf jede Variable erhalten (z. B. variabledrat:geardie Auswirkung des Prädiktors gearauf die Antwort drat), aber Sie würden auch die Abschnitte für jede Variable (z. B. variabledratfür den Abschnitt der Antwort drat) und den Zufall erhalten Varianz jeder Variablen und die Korrelationen zwischen Variablen:

Groups       Name         Std.Dev. Corr     
 factor(carb) variabledrat 23.80             
              variablempg  24.27    0.20     
              variablehp   23.80    0.00 0.00
 Residual                  23.80       

Eine detailliertere Beschreibung dieser Methoden wurde von Ben Bolker sowie die Verwendung MCMCglmmin einem Bayes'schen Rahmen niedergeschrieben. Ein weiteres neues Paket mcglmkann auch multivariate Modelle verarbeiten, selbst bei nicht normalen Antworten. Sie müssen jedoch Ihre zufälligen Entwurfsmatrizen codieren. Ein Tutorial sollte bald verfügbar sein (siehe die R-Hilfeseite).

Charlotte R.
quelle