[R-br] Ajuda para realizar post-hoc em Anova de Medidas repetidas.

Augusto Ribas ribas.aca em gmail.com
Sexta Novembro 25 02:11:30 BRST 2011


Ola pessoal. Estou aqui ainda muito confuso com o que estou fazendo.
Alguém poderia dar uma olhadinha pra ver se estou no caminho certo?
E outra coisa eu não consigo arrumar a matriz de contrastes para testar o
que eu quero.
Segue um cmr do que to fazendo.
E boa sexta feira a todos :)

#Criandos dados
set.seed(1)
Resposta<-c(rnorm(20,2),rnorm(10,5),rnorm(20,5),rnorm(10,8))
Perigo<-rep(c("Baixo","Alto"),each=30)
Id<-c(rep(1:10,3),rep(11:20,3))
Dia<-rep(rep(1:3,each=10),2)
dados<-data.frame(cbind(Perigo,Dia,Id,Resposta))
dados$Resposta<-as.numeric(levels(dados$Resposta))[dados$Resposta]
str(dados)

#Olhando os dados com um grafico
library(lattice)
xyplot(Resposta~Dia|Perigo,data=dados, pch=16, col="black", cex=1.3,

 strip=strip.custom(bg="white"),type=c("p","a"),scale=list(tck=c(1,0),alternating=1))

#Anova de medidas repetidas
modelo<-aov(Resposta~Perigo*Dia+Error(Id),data=dados)
summary(modelo)

#Legal é diferente os dias e o tratamento, mas quão diferente?
#tentando avaliar isso.
#arrumando os dados pra usar a função gls
library(nlme)
dados.gls<-groupedData(Resposta~as.numeric(Perigo)*as.numeric(Dia)|Id,data=dados)

#testando os varios modelos de estrutura de variancia-covariancia
#Modelo Compound Symmetry
fit.cs<-gls(Resposta~Perigo*Dia,data=dados.gls,
corr=corCompSymm(,form=~1|Id))
summary(fit.cs)

#Modelo Unstructured
fit.un<-gls(Resposta~Perigo*Dia,data=dados.gls,
  corr=corSymm(form=~1|Id),weights=varIdent(form=~1|Dia))
summary(fit.un)

#Modelo Autoregressive
fit.ar1<-gls(Resposta~Perigo*Dia,data=dados.gls,
  corr=corAR1(,form=~1|Id))
summary(fit.ar1)

#Modelo Autoregressive with heterogeneous variances
fit.arh1<-gls(Resposta~Perigo*Dia,data=dados.gls,
  corr=corAR1(,form=~1|Id),weight=varIdent(form=~1|Dia))
summary(fit.arh1)

#Comparando os modelos
anova(fit.cs, fit.un)
#pq aqui ele nao faz teste?
anova(fit.cs, fit.ar1)
anova(fit.cs, fit.arh1)

#Compound Symetry é o melhor pois é mais simples e ninguem foi muito
diferente
#no AIC, ou seja ele é mais simples e explica bem e "ninguem" é diferente
dele.

#So que o que vejo é comparar tudo com o Alto dia 1
summary(fit.cs)
#O valor do intercept é referente a media do alto Perigo do dia 1 certo?
# todos os valores são comparados com ele...

aggregate(dados$Resposta,list(dados$Perigo,dados$Dia),mean)

#logo o perigo baixo do dia(PerigoBaixo) 1 é diferente.
#Perigo alto dia 2(Dia2) é igual
#mas dia 3 é diferente, o perigo baixo dia 2 não deveria ser diferente
#e o PerigoBaixo:Dia3 igual?
#aqui ja me perdi e nao entendo o que ta acontecendo

#E Eu queria comparar os dias 1 entre eles, os dias 2 entre eles
#e os dias 3 entre eles..
#Tipo perigos no dia 1, perigos nos dia 2 e nos dia 3, tem como mudar
#a matriz de contrastes pra adaptar a essa pergunta?
contrasts(dados$Dia)


Em 22 de novembro de 2011 16:35, Walmes Zeviani
<walmeszeviani em gmail.com>escreveu:

> Augusto,
>
> Com a função aov() você não está apropriadamente ajustando um modelo para
> contemplar as medidas repetidas. A aov() implica em uma estrutura simétrica
> composta. É mais realista usar uma estrutura de covariância entre as
> observações na qual a correlação diminua com o intervalo de separação
> (temporal, espacial). Você pode ajustar um modelo linear assim com a
> nlme::gls() declarando alguma estrutura de correlação para o argumento
> correlation= dessa função. Veja ?corClasses. Para aplicar o teste você pode
> usar a gmodels::estimable(), gmodels::fit.contrast(), contrast::contrast(),
> multcomp::glht(). Não tenho certeza se todas tem métodos para objetos da
> classe gls. Uma pergunta para estimular o pensamento: se você pode assumir
> que a correlação diminui continuamente com o intervalo de tempo, para quê
> fazer teste de média se você pode também modelar a sua resposta como uma
> função contínua no tempo?
>
> À disposição.
> Walmes.
>
> ==========================================================================
> Walmes Marques Zeviani
> LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W)
> Departamento de Estatística - Universidade Federal do Paraná
> fone: (+55) 41 3361 3573
> VoIP: (3361 3600) 1053 1173
> e-mail: walmes em ufpr.br
> twitter: @walmeszeviani
> homepage: http://www.leg.ufpr.br/~walmes
> linux user number: 531218
> ==========================================================================
>
> _______________________________________________
> 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.
>



-- 
Grato
Augusto C. A. Ribas

Site Pessoal: http://augustoribas.heliohost.org
Lattes: http://lattes.cnpq.br/7355685961127056
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20111125/b0838f1d/attachment.html>


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