[R-br] GLM

Mauro Sznelwar sznelwar em uol.com.br
Domingo Dezembro 15 19:02:24 BRST 2013


A partir daí não consegui rodar, ele não reconhece as funções popMeans e popMatrix, e instalei a bibliotéca doBay

## efeito marginal de A (ou seja, na média dos níveis de B)
popMeans(m0, effect="A")

## efeito marginal de B (ou seja, na média dos níveis de A)
popMeans(m0, effect="B")

## efeito de A condicional à B=1
popMeans(m0, effect="A", at=list(B="1"))

## aqui é para ver as matrizes envolvidas
popMatrix(m0, effect="A")
popMatrix(m0, effect="A", at=list(B="1"))



  Você pode obter as estimativas de cada casela de diversas formas: 1) removendo intercepto da fórmula, 2) mudando o tipo de constraste, 3) calculando as funções lineares por fora com matrizes apropriadas e 4) fazendo o item 3 com a popMeans() e/ou popMatrix(), que considero a opção mais simples. Veja o CMR.

  ##-----------------------------------------------------------------------------

  ## dados artificiais
  da <- expand.grid(A=gl(4,4), B=gl(3,1))
  da$y <- rpois(nrow(da), lambda=10)

  ## constrates usados por padrão
  options()$contrasts

  ## removendo o intercepto, primeiro fator com estimativas por nível
  m0 <- glm(y~-1+A+B, data=da, family=poisson)
  summary(m0)
  m0 <- glm(y~-1+B+A, data=da, family=poisson)
  summary(m0)

  ## mudando a opção de contraste localmente 
  m0 <- glm(y~A+B, data=da, family=poisson,
            contrasts=list(A=contr.helmert, B=contr.SAS))
  summary(m0)

  M <- unique(model.matrix(m0))
  M

  ## comportamento padrão
  m0 <- glm(y~A+B, data=da, family=poisson)
  summary(m0)

  M <- unique(model.matrix(m0))
  M

  ##-----------------------------------------------------------------------------

  ## estimativas para cada combinação A*B
  M%*%coef(m0)

  ## para soma direta de matrizes
  source("http://fisher.osu.edu/~schroeder_9/AMIS900/blockdiag.R")

  mA <- contrasts(da$A)
  mB <- contrasts(da$B)
  M <- list(mA, mB)
  M <- cbind(1, blockdiag(M))
  M <- unique(M)
  M

  M%*%coef(m0)
  coef(m0)

  require(doBy)

  ## efeito marginal de A (ou seja, na média dos níveis de B)
  popMeans(m0, effect="A")

  ## efeito marginal de B (ou seja, na média dos níveis de A)
  popMeans(m0, effect="B")

  ## efeito de A condicional à B=1
  popMeans(m0, effect="A", at=list(B="1"))

  ## aqui é para ver as matrizes envolvidas
  popMatrix(m0, effect="A")
  popMatrix(m0, effect="A", at=list(B="1"))

  ##-----------------------------------------------------------------------------

  À disposição.
  Walmes.



------------------------------------------------------------------------------


  _______________________________________________
  R-br mailing list
  R-br em listas.c3sl.ufpr.br
  https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
  Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20131215/6daf6d1c/attachment.html>


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