Pesos beta padronizados para uma regressão multinível

11

Como se pode obter pesos de regressão padronizados (efeito fixo) a partir de uma regressão multinível?

E, como um "complemento": Qual é a maneira mais fácil de obter esses pesos padronizados de um merobjeto-(da lmerfunção do lme4pacote em R)?

Felix S
fonte
Especificamente, mer ou você está solicitando algum coeficiente de modelo linear?
Robert Kubrick
Na verdade, estou mais interessado em como fazer isso em geral (eu padronizaria todas as variáveis ​​de antemão, como nos modelos lineares regulares, mas não tenho certeza se essa abordagem é válida nos MLMs). Acima, gostaria de ver como isso é feito com objetos lme4. Eu refiz a pergunta de acordo!
Felix S
1
Você pode estar interessado neste artigo de Andrew Gelman e Iain Pardoe (2007) Comparações preditivas médias para modelos com componentes de não linearidade, interações e variância .
Andy W

Respostas:

9

Simplesmente dimensione suas variáveis ​​explicativas para ter média de zero e variação de uma antes de colocá-las no modelo. Todos os coeficientes serão comparáveis. A natureza dos efeitos mistos do modelo não afeta esse problema.

A melhor maneira de fazer isso, e com menor probabilidade de dar errado, é usar scale () antes de você se encaixar no modelo.

Peter Ellis
fonte
Obrigado, é o que eu queria saber: redimensionar para a grande média (ignorando a estrutura do grupo ...).
Felix S
3

Para obter uma maneira rápida de obter os coeficientes beta padronizados diretamente de qualquer modelo lm (ou glm) no R, tente usar lm.beta(model)o pacote QuantPsyc. Por exemplo:

library("MASS")
glmModel = glm(dependentResponseVar ~ predictor1 + predictor2, data=myData)
summary(glmModel)

library(QuantPsyc)
lm.beta(glmModel)
CJH
fonte
1
Em este e-mail Ben Bolker traduzido esta função para "lmer-terra".
CRSH
Mas o código vinculado que Ben fornece não é realmente funcional, como está escrito nesse e-mail, não parece. Inclui palavras / pseudocódigo .... Editar: A resposta a esta pergunta fornecerá o código de trabalho: stats.stackexchange.com/questions/123366/…
Bajcz
2

Para modelos lineares padrão regredidos com lm ​​(), você pode escalar () os dados de seus preditores ou apenas usar esta fórmula simples:

lm.results = lm(mydata$Y ~ mydata$x1)

sd.y = sd(mydata$Y)
sd.x1 = sd(mydata$x1)
x1.Beta = coef(lm.results)["mydata$x1"] * (sd.x1 / sd.y)
Robert Kubrick
fonte
1

Supondo que você definiu a saída do seu lmermodelo como lmer.results, fixef(lmer.results)retornará os coeficientes gerais de efeitos fixos.

Michelle
fonte
2
Eles não serão "padronizados", serão? Eu li a pergunta como querendo saber o tamanho dos efeitos fixos se as variáveis ​​explicativas estivessem todas na mesma escala.
Peter Ellis
Não sei se é possível obter os coeficientes padronizados de um merobjeto - eles não aparecem no resumo, portanto, suponho que os lme4métodos não os criem. fixef()retornará todas as informações de efeito fixo disponíveis de um merobjeto.
626 Michelle
1
Como Peter já comentou: o foco da pergunta era sobre os coeficientes 'padronizados' ...
Felix S