Jak interpretować współczynniki wielowymiarowego modelu mieszanego w lme4 bez ogólnego przechwytywania?

10

Usiłuję dopasować model mieszany wielowymiarowy (tj. Wiele odpowiedzi) R. Oprócz pakietów ASReml-ri SabreR(które wymagają zewnętrznego oprogramowania) wydaje się, że jest to możliwe tylko w MCMCglmm. w artykule dołączonym do MCMCglmmpakietu (str. 6) Jarrod Hadfield opisuje proces dopasowywania takiego modelu, jak na przykład przekształcanie wielu zmiennych odpowiedzi w jedną zmienną o długim formacie, a następnie tłumienie ogólnego przechwytywania. Rozumiem, że tłumienie przecięcia zmienia interpretację współczynnika dla każdego poziomu zmiennej odpowiedzi, która jest średnią dla tego poziomu. Czy w związku z powyższym można dopasować wielowymiarowy model mieszany za pomocą lme4? Na przykład:

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

Jak interpretować współczynniki w tym modelu? Czy ta metoda zadziała również w przypadku uogólnionych liniowych modeli mieszanych?

Chris
źródło

Odpowiedzi:

2

Twój pomysł jest dobry, ale w twoim przykładzie zapomniałeś modelować różne przechwytywanie i różne losowe wariancje dla każdej cechy, więc twój wynik nie jest możliwy do interpretacji. Prawidłowy model to:

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

W takim przypadku uzyskałbyś oszacowania stałych efektów dla każdej zmiennej (na przykład variabledrat:gearjest to wpływ predyktora gearna odpowiedź drat), ale uzyskałbyś także przechwyty dla każdej zmiennej (na przykład variabledratdla przechwytywania odpowiedzi drat) i losowe wariancja każdej zmiennej i korelacje między zmiennymi:

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       

Bardziej szczegółowy opis tych metod został spisany przez Bena Bolkera , a także zastosowanie MCMCglmmw ramach Bayesa. Kolejny nowy pakiet, mcglmmoże również obsługiwać modele wielowymiarowe, nawet z niestandardowymi odpowiedziami, ale musisz zakodować swoje losowe macierze projektowe. Samouczek powinien być wkrótce dostępny (patrz strona pomocy R).

Charlotte R.
źródło