Respostas:
A estrutura de variância-covariância padrão não é estruturada - ou seja, a única restrição na matriz de variância-covariância para um efeito aleatório de vetor com níveis é que é definida positivamente. Entretanto, termos de efeitos aleatórios separados são considerados independentes; portanto, se você desejar ajustar (por exemplo) um modelo com interceptação e inclinação aleatória em que a interceptação e a inclinação não estejam correlacionadas (não necessariamente uma boa idéia), use a fórmula , onde está o fator de agrupamento; a(1|g) + (0+x|g)
g
0
no segundo termo suprime a interceptação. Se você deseja ajustar parâmetros independentes de uma variável categórica (novamente, possivelmente questionável), provavelmente precisará construir variáveis fictícias numéricas manualmente. Você pode construir uma estrutura de variância-covariância simétrica composta (embora apenas com covariâncias não-negativas) tratando o fator como uma variável de agrupamento aninhado. Por exemplo, se f
é um fator, (1|g/f)
assumirá correlações iguais entre os níveis de f
.
Para outras / estruturas de variância-covariância mais complexas, suas opções (em R) são (1) usar nlme
(que possui pdMatrix
construtores para permitir mais flexibilidade); (2) uso MCMCglmm
(que oferece uma variedade de estruturas, incluindo estruturas não estruturadas, simétricas, identidade com diferentes variações ou identidade com variações homogêneas); (3) use um pacote para fins especiais, como o pedigreemm
que constrói uma matriz estruturada especial. Existe um flexLambda
ramo no github que eventualmente espera fornecer mais recursos nessa direção.
Eu posso mostrar isso por exemplo.
Os termos de covariância são especificados na mesma fórmula que os efeitos fixos e aleatórios. Os termos de covariância são especificados pela maneira como a fórmula é escrita.
Por exemplo:
glmer(y ~ 1 + x1 + (1|g) + (0+x1|g), data=data, family="binomial")
Aqui existem dois efeitos fixos que podem variar aleatoriamente e um fator de agrupamento g
. Como os dois efeitos aleatórios são separados em seus próprios termos, nenhum termo de covariância é incluído entre eles. Em outras palavras, apenas a diagonal da matriz de variância-covariância é estimada. O zero no segundo termo diz explicitamente não adicionar um termo de interceptação aleatória ou permitir que uma interceptação aleatória existente varie com x1
.
Um segundo exemplo:
glmer(y ~ 1 + x1 + (1+x1|g), data=data, family="binomial")
Aqui, uma covariância entre os x1
efeitos de interceptação e aleatória é especificada porque 1 + x1 | g está todo contido no mesmo termo. Em outras palavras, todos os três parâmetros possíveis na estrutura de variância-covariância são estimados.
Um exemplo um pouco mais complicado:
glmer(y ~ 1 + x1 + x2 + (1+x1|g) + (0+x2|g), data=data, family="binomial")
Aqui, os x1
efeitos de interceptação e aleatórios podem variar juntos, enquanto uma correlação zero é imposta entre o x2
efeito aleatório e cada um dos outros dois. Novamente, a 0
é incluído no x2
termo do efeito aleatório apenas para evitar explicitamente a inclusão de uma interceptação aleatória que cubra o x2
efeito aleatório.
xxM
pacote também é uma opção boa, mas mais complicada, que permite a modelagem de equações estruturais. xxm.times.uh.edu