Suponha que eu tenha 10 alunos, cada um tentando resolver 20 problemas de matemática. Os problemas são pontuados como corretos ou incorretos (em dados longos) e o desempenho de cada aluno pode ser resumido por uma medida de precisão (em dados subjetivos). Os modelos 1, 2 e 4 abaixo parecem produzir resultados diferentes, mas entendo que eles estejam fazendo a mesma coisa. Por que eles estão produzindo resultados diferentes? (Incluí o modelo 3 para referência.)
library(lme4)
set.seed(1)
nsubjs=10
nprobs=20
subjdata = data.frame('subj'=rep(1:nsubjs),'iq'=rep(seq(80,120,10),nsubjs/5))
longdata = subjdata[rep(seq_len(nrow(subjdata)), each=nprobs), ]
longdata$correct = runif(nsubjs*nprobs)<pnorm(longdata$iq/50-1.4)
subjdata$acc = by(longdata$correct,longdata$subj,mean)
model1 = lm(logit(acc)~iq,subjdata)
model2 = glm(acc~iq,subjdata,family=gaussian(link='logit'))
model3 = glm(acc~iq,subjdata,family=binomial(link='logit'))
model4 = lmer(correct~iq+(1|subj),longdata,family=binomial(link='logit'))
r
regression
logistic
generalized-linear-model
binomial
user20061
fonte
fonte
library(betareg)
model5 = betareg(acc~scale(iq),subjdata)
library(car)
é necessário, para a função logit.Respostas:
Os modelos 1 e 2 são diferentes porque o primeiro transforma a resposta e o segundo transforma o valor esperado.
Para o Modelo 1, o logit de cada resposta é normalmente distribuído com sua média sendo uma função linear do preditor e vetores coeficientes. e, portanto, Para o Modelo 2, a resposta em si é normalmente distribuída com o logit de sua média sendo uma função linear do preditor e vetores coeficientes e, portanto,
Portanto, a estrutura de variação será diferente. Imagine simular a partir do Modelo 2: a variação será independente do valor esperado; e embora os valores esperados das respostas estejam entre 0 e 1, nem todas as respostas estarão.
Modelos mistos lineares generalizados como o seu Modelo 4 são diferentes novamente porque contêm efeitos aleatórios: veja aqui e aqui .
fonte
longdata
), não às proporções como no modelo 3.+1 para @ Scortchi, que forneceu uma resposta muito clara e concisa. Eu quero fazer alguns pontos complementares. Primeiro, para o seu segundo modelo, você está especificando que sua distribuição de respostas é gaussiana (também conhecida como normal). Isso deve ser falso, porque cada resposta é pontuada como correta ou incorreta. Ou seja, cada resposta é um julgamento de Bernoulli. Portanto, sua distribuição de respostas é um binômio. Essa ideia também é refletida com precisão no seu código. Em seguida, a probabilidade que governa a distribuição da resposta é normalmente distribuída; portanto, o link deve ser probit, não logit. Por fim, se essa fosse uma situação real, você precisaria considerar efeitos aleatórios para ambos os assuntos e perguntas, pois é extremamente improvável que sejam idênticos. Da maneira como você gerou esses dados, o único aspecto relevante de cada pessoa é o seu QI, pelas quais você explicou explicitamente. Portanto, não resta nada que precise ser explicado por um efeito aleatório no modelo. Isso também se aplica às perguntas, porque variações aleatórias na dificuldade da pergunta não fazem parte do processo de geração de dados no seu código.
Não pretendo ficar aqui aqui. Reconheço que sua configuração foi projetada simplesmente para facilitar sua pergunta e serviu a esse propósito; A @ Scortchi conseguiu responder às suas perguntas diretamente, com o mínimo de barulho. No entanto, aponto essas coisas porque oferecem oportunidades adicionais para entender a situação com a qual você está lidando, e porque você pode não ter percebido que seu código corresponde a algumas partes do seu enredo, mas não a outras.
fonte