[R-br] Erro modelo - glm

Leonardo Ferreira Fontenelle leonardof em leonardof.med.br
Quarta Junho 8 11:16:04 BRT 2016


Em Ter 7 jun. 2016, às 20:26, Andre Oliveira escreveu:
> boa noite, alguém poderia ajudar descobrir onde está o erro?
>
> remove(list=ls())
> diurno=c(68,36,40,30)
> noturno=c(46,26,55,22)
> quadra= c("A", "B", "G","D")
> dados=data.frame(diurno,noturno,quadra)
> fit = glm(cbind(diurno, noturno) ~ factor(quadra), family = poisson,
> data=dados)
> *Error in x[good, , drop = FALSE] :
*
> *  (subscript) subscrito lógico muito longo*
 
Andre, conforme está escrito na documentação do glm, a resposta pode ser
fornecida como duas colunas (sucessos e fracassos) *apenas para
regressões binomiais e quasi-binomiais*; não para Poisson.
 
Supondo que seus dados sejam o resumo de 68 + 46 = 114 observações para
a quadra A, 36 + 26 = 62 observações para a quadra B, e por aí em
diante; e que você queira calcular uma razão de prevalência / risco /
outra proporção entre as quadras, o jeito mais óbvio de fornecer seus
dados para a função é em formato longo:
 
dados <- data.frame(horariodiurno = c(1, 0, 1, 0, 1, 0, 1, 0), quadra =
c("A", "A", "B", "B", "C", "C", "D", "D"))
dados <- dados[rep(1:nrow(dados), c(68, 46, 36, 26, 40, 55, 30, 22)), ]
fit = glm(horariodiurno ~ quadra, family = quasipoisson, data = dados)
 
Repare também que, se você quer trabalhar com razão de proporções, a
distribuição Poisson em princípio não se aplica, daí a necessidade de
você especificar uma quasipoisson ou então um estimador de variância
consistente com heterocedasticidade (pacote sandwich).
 
Por favor, use o código com cuidado porque não estou com meu computador
aqui para testá-lo.
 
Atenciosamente,
 
Leonardo Ferreira Fontenelle[1]

Links:

  1. http://lattes.cnpq.br/9234772336296638
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160608/7af199f3/attachment.html>


Mais detalhes sobre a lista de discussão R-br