Muito
obrigado! Deu certo!
Mauro,
A função as.layer esta no pacote latticeExtra. Tive que usar
o biocLite para instalar o pacote.
source("http://bioconductor.org/biocLite.R")
biocLite("latticeExtra")
Att.,
Alisson
2015-10-05 21:07 GMT-03:00 Mauro Sznelwar <sznelwar@uol.com.br>:
Não consegui esta
função! Eu usei a biblioteca lattice para o xyplot, rodou o primeiro mas este
não rodou porque não reconhece o as.layer
xyplot(imoveis/(moveis+imoveis)~sqrt(tem),
data=db,
jitter.x=TRUE, ylim=c(0, NA))+
as.layer(xyplot(p~sqrt(tem), data=pred, type="l"))
O fato de não serem
significativos não é problema. Tem que ter em mente que parametrização você
usou e as hipóteses decorrentes. Nessa parametrização de estimativas por cela
(~trat-1), quando um trat tem estimativa 0, significa que a prob de mobilidade
é 0.5. Então esse teste de hipótese, apesar de feito e retornado, não traz nada
de interessante na maioria dos casos. Eu considero que os interesses sejam
sobre as diferenças entre trat e não se eles tem ou não prob=0.5.
Vamos agora aos potenciais
problemas. Os níveis A, B, B-12 e B-24 tem probabilidades amostrais nas bordas,
ou seja, 0 e 1. Na binomial, o espaço de p é (0, 1), ou seja, não os incluem.
No glm, tais valores são obtidos no limite, quando \eta = X\beta vai para
-\infty ou \infty, o p aproxima de 0 ou 1. Aplique o inverso da função de
ligação em -23 e verá que isso é zero. Pelo sufixo que usou nos
tratamentos, isso tem cara avaliação no tempo, com algumas testemunhas (sem
sufixo), como é de costume em muitos experimentos. Uma solução, seria ajustar a
curva para usando de T-0 à T-12. As testemunhas ficam de fora. Obtenha para
elas o IC por perfil de verossimilhança, pois, embora o limite inferir e
estimativa sejam 0, o limite superior será algo >0 (inverta o raciocínio
para a outra borda).
## Estimativa zero implica em
prob=0.5.
glm_out$family$linkinv(0)
glm_out$family$linkinv(-23)
sub_data$tem <- as.numeric(gsub(x=sub_data$tratamento, "\\D",
""))
db <- subset(sub_data, !is.na(tem))
xyplot(imoveis/(moveis+imoveis)~sqrt(tem), data=db,
jitter.x=TRUE)
m0 <- glm(cbind(imoveis, moveis) ~ sqrt(tem),
family=binomial,
data=db)
summary(m0)
pred <- data.frame(tem=seq(0, 24, length.out=30))
pred$p <- predict(m0, newdata=pred, type="response")
xyplot(imoveis/(moveis+imoveis)~sqrt(tem), data=db,
jitter.x=TRUE, ylim=c(0, NA))+
as.layer(xyplot(p~sqrt(tem), data=pred, type="l"))
À disposição.
Walmes.
![]() |
Este email foi escaneado pelo Avast antivírus.
|