Walmes, Alexandre e demais colaboradores da lista do R,
Primeiramente quero agradecer pela resposta rápida ao meu questionamento.
Da forma como eu
coloquei o conjunto de dados no post anterior, realmente é de supor que mesmo não seja uma variável discreta (foi falha minha):
da$y <- c(4.5, 25.5, 8.5, 12, 123, 19.5, 111.5, 83.5, 10, 4, 4.5,
90.5, 46.5, 61.5, 20.5, 33.5, 47.5, 39, 131.5, 68.5, 4,
10, 13.5, 10, 9, 0, 0, 0, 2, 0, 0, 0, 0, 12.5, 4.5, 6.5,
1, 0, 0, 1, 0, 0, 0.5, 0, 2, 2, 0.5, 0.5)
De fato, esses dados equivalem ao número de esporos de um fungo em suspensão/mL de água x 104, ou seja:
da$y1= c(45000, 255000, 85000, 12000, 1230000, 195000, 1115000,
835000, 100000, 40000, 45000, 905000, 465000, 615000,
205000, 335000, 475000, 390000, 1315000, 685000, 40000,
100000, 135000, 100000, 90000, 0, 0, 0, 20000, 0, 0, 0,
0, 125000, 45000, 650000, 10000, 0, 0, 10000, 0, 0, 5000,
0, 20000, 20000, 5000, 5000)
Sendo uma variável discreta, utilizei a distribuição de Poisson, conforme o código abaixo.
g0 <- glm(y1~isol + cult + isol:cult, family=poisson, data=da)
summary(g0)
anova(g0, test="Chisq")
isolcult <- interaction(da$isol, da$cult, drop=TRUE)
m0 <- glm(da$y~isolcult, family=poisson)
require(multcomp)
glht.m0 <- glht(m0, mcp(isolcult = "Tukey"))
summary(glht.m0)
Estando a função correta, conforme falou o Walmes, surgiram algumas dúvidas com relação aos contrastes gerados.
Esses contrastes que são testados pelo teste z (contraste de Tukey) são baseados na distribuição normal? (sendo que o teste z pressupõe a normalidade dos dados
para grandes amostras - normal 0,1). Se sim, é correto utilizar esse teste em situações de não normalidade de dados?
É o teste z, resultante do R nesse caso específico, equivalente a um teste não paramétrico, como o de qui-quadrado?
Quando eu utilizava o SAS, a ferramenta estatitica no proc GENMOD do SAS permitia a realização do teste de qui-quadrado para efetuar os contrates dentro da interação ou efeitos principais. Dessa forma, gostaria de saber de vcs, se é possível fazer isso também no R, utilizando o teste de qui-quadrado para testar as os efeitos
principais e desdobramento das interações?
Mais uma vez, agradeço a todos antecipadamente pela atenção, e peço desculpas pelo excesso de perguntas em um único post.
Att.,
--
Wirton Macedo Coutinho
Pesquisador Fitopatologia
Embrapa Algodão
Rua Oswaldo Cruz, 1143, Centenário
Campina Grande PB
CEP 28428-095
216 posts | Boa noite Wirton, Vejo problemas com o seu modelo: Em summary(g0), o Residual deviance: 431.11 on 36 degrees of freedom esta com sobre dispersão e se fizer plot(m0), especificamente no gráfico Normal Q-Q versus Desvio padrão residual vera que o ajuste não ficou bom. Veja também que sua variável resposta da$y são dados contínuos e não discretos e não existe 0 na distribuição de Poisson. Abraço, --
======================================================================
Alexandre dos Santos
Proteção Florestal
Coordenador do curso Técnico em Florestas
Vice Coordenador do curso de Engenharia Florestal
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
Campus Cáceres
Caixa Postal 244
Avenida dos Ramires, s/n
Bairro: Distrito Industrial
Cáceres - MT CEP: 78.200-000
Fone: (+55) 65 8132-8112 (TIM) (+55) 65 9686-6970 (VIVO)
[hidden email]
[hidden email]
====================================================================== Em 23/06/2013 20:08, Wirton Macedo Coutinho escreveu:
Boa noite a todos,
Tenho um conjunto de dados em arranjo fatorial que não atendem as pressuposições de normalidade e homocesdacidade de variâncias. Para contornar esse problema, optei por fazer a análise do mesmo por GLM; no entanto,como houve efeito significativo da interação, fiquei na dúvida de como proceder para fazer o desdobramento e fazer comparações múltiplas entre os tratamentos.
Pesquisando na internet, encontrei um post que recomendava fazê-lo por meio de constrastes
utilizando o pacote multcomp. Assim o fiz (como vcs podem conferir pelo código abaixo). No entanto, como migrei recentemente para o R, surgiu a dúvida se isso que fiz está correto ou não. Assim, gostaria da opinião de vcs sobre o código ou se tem uma outra forma de fazê-lo.
da <- expand.grid(rep=1:4, isol=factor(1:6), cult=factor(1:2)) da$y <- c(4.5, 25.5, 8.5, 12, 123, 19.5, 111.5, 83.5, 10, 4, 4.5, 90.5, 46.5, 61.5, 20.5, 33.5, 47.5, 39, 131.5, 68.5, 4, 10, 13.5, 10, 9, 0,
0, 0, 2, 0, 0, 0, 0, 12.5, 4.5, 6.5, 1, 0, 0, 1, 0, 0, 0.5, 0, 2, 2, 0.5, 0.5)
g0 <- glm(y~isol + cult + isol:cult, family=poisson, data=da) summary(g0) anova(g0, test="Chisq")
isolcult <- interaction(da$isol, da$cult, drop=TRUE) m0 <- glm(da$y~isolcult, family=poisson) require(multcomp) glht.m0 <- glht(m0, mcp(isolcult = "Tukey")) summary(glht.m0)
Certo de contar com a boa vontade de todos, agradeço antecipadamente.
Att.,
-- Wirton Macedo Coutinho Pesquisador Fitopatologia Embrapa Algodão Rua Oswaldo Cruz, 1143, Centenário Campina Grande PB CEP 28428-095
_______________________________________________
R-br mailing list
[hidden email]
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.
_______________________________________________ R-br mailing list [hidden email] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-brLeia o guia de postagem ( http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível. |
725 posts | O uso da função tá correto, no entanto os teus dados não são inteiros, como contagens, para você usar distribuição Poisson. Se os dados não são números de eventos, contagens, não há razão para usar Poisson. Penso que o seu dado seja contínuo e que uma transformação pode amenizar o desvio dos pressupostos. Pelo gráfico de diagnostico dos resíduos o que se vê é uma forte relação
média-variância. A transformação Box-Cox sugeriu transformar com log. Veja o CMR.
da <- expand.grid(rep=1:4, isol=factor(1:6), cult=factor(1:2)) da$y <- c(4.5, 25.5, 8.5, 12, 123, 19.5, 111.5, 83.5, 10, 4, 4.5, 90.5, 46.5, 61.5, 20.5, 33.5, 47.5, 39, 131.5, 68.5, 4, 10, 13.5, 10, 9, 0, 0, 0, 2, 0, 0, 0, 0, 12.5, 4.5, 6.5, 1, 0, 0, 1, 0, 0, 0.5, 0, 2, 2, 0.5, 0.5)
g0 <- lm(y~isol + cult + isol:cult, data=da) par(mfrow=c(2,2)) plot(g0) layout(1)
g0 <- lm(y+0.5~isol + cult + isol:cult, data=da) MASS::boxcox(g0)
g0 <- lm(log(y+0.5)~isol + cult + isol:cult, data=da) par(mfrow=c(2,2)) plot(g0) layout(1)
À
disposição. Walmes.
==========================================================================Walmes Marques ZevianiLEG (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 3573VoIP: (3361 3600)
1053 1173e-mail: [hidden email] skype: walmeszeviani twitter: @walmeszevianihomepage: http://www.leg.ufpr.br/~walmeslinux user number: 531218========================================================================== |
Boa noite a todos,
Tenho um conjunto de dados em arranjo fatorial que não atendem as pressuposições de normalidade e homocesdacidade de variâncias. Para contornar esse problema, optei por fazer a análise do mesmo por GLM; no entanto,como houve efeito significativo da
interação, fiquei na dúvida de como proceder para fazer o desdobramento e fazer comparações múltiplas entre os tratamentos.
Pesquisando na internet, encontrei um post que recomendava fazê-lo por meio de constrastes utilizando o pacote multcomp. Assim o fiz (como vcs podem conferir pelo código abaixo). No entanto, como migrei recentemente para o R, surgiu a dúvida se isso que fiz está correto ou não. Assim, gostaria da opinião de vcs sobre o código ou se tem uma outra forma de fazê-lo.
da <- expand.grid(rep=1:4, isol=factor(1:6), cult=factor(1:2))
da$y <- c(4.5, 25.5, 8.5, 12, 123, 19.5, 111.5, 83.5, 10, 4, 4.5,
90.5, 46.5, 61.5, 20.5, 33.5, 47.5, 39, 131.5, 68.5, 4,
10, 13.5, 10, 9, 0, 0, 0, 2, 0, 0, 0, 0, 12.5, 4.5, 6.5,
1, 0, 0, 1, 0, 0, 0.5, 0, 2, 2, 0.5, 0.5)
g0 <- glm(y~isol + cult + isol:cult, family=poisson, data=da)
summary(g0)
anova(g0, test="Chisq")
isolcult <- interaction(da$isol, da$cult, drop=TRUE)
m0 <- glm(da$y~isolcult, family=poisson)
require(multcomp)
glht.m0 <- glht(m0, mcp(isolcult = "Tukey"))
summary(glht.m0)
Certo de
contar com a boa vontade de todos, agradeço antecipadamente.
Att.,
--
Wirton Macedo Coutinho
Pesquisador Fitopatologia
Embrapa Algodão
Rua Oswaldo Cruz, 1143, Centenário
Campina Grande PB
CEP 28428-095
_______________________________________________
R-br mailing list
[hidden
email] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-brLeia o guia de postagem (
http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.