<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="trebuchet ms,sans-serif">Caro walmes, Ha algum tempo
atras postei uma dúvida a respeito de testes de comparações
multiplas para dados desbalanceados. E você então postou a
seguinte resposta a qual reproduzo novamente abaixo e que foi de
grande ajuda. Depois de entender tudo que você postou fiquei com a
seguinte dúvida:<br>
<br>
Em seu exemplo no final da resposta, vc executa a função glht do
pacote multicomp, baseado em seu contraste de interesse. A função
acima utiliza o procedimento step-one (Default), o qual segundo o
autor do livro do pacote multicomp é um procedimento conservador.
Com base em sua abordagem como fica esta questão de escolher um
teste menos conservador (ex. SNK) ou mais conservador
(Ex.Tukey)?Não importa mais qual o tipo de teste utilizado, desde
que ele controle a taxa de erro?<br>
<br>
grato pela atenção<br>
<br>
<br>
"Eu prefiro usar a multcomp porque lá eu tenho controle total das
comparações que quero fazer. Eu aprendi a usá-la antes de pacotes
mais dedicados estarem disponíveis. Basicamente, qual o problema
das comparações múltiplas? É o fato de você testar muitas
hipóteses e isso elevar rapidamente a taxa de erro tipo I global.
Qual a solução? Lançar mão de métodos que mantenham essa taxa
global próximo do valor nominal, na sua maioria 5%. Tudo o que se
conhece sobre testes de comparações múltiplas são conceitualmente
maneiras de fazer isso. Cada um lança mão de um princípio para
fazê-lo e por isso possem alguma divergência. Alguns deles se
baseiam no fato das estimativas terem mesma precisão e serem
independentes, o que ocorre em todo experimento de fatores
categóricos completamente cruzados e balanceado. Nesses casos a
matriz de covariância das estimativas das médias é diagonal. Com
fatores cruzados mas não balanceado (diferente número de
repetições), será diagonal com precisões diferentes para cada
nível do fator. Com cruzamento incompleto, chamado de perda de
caselas, você terá elementos fora da diagonal não nulos. É
importante que você entenda que médias amostrais só são
estimadores admissíveis para médias (parâmetro) em raras
situações. Deve usar médias obtidas matricialmente, que foi
batizado por aí de médias ajustadas. Eu pessoalmente não vejo
porque o uso da palavra ajustado se de fato é o procedimento
correto, o caso geral para estimar uma média. As médias amostrais
é que deviam ser chamadas de "médias possivelmente
desajustadas/viesadas". Eu gosto da multcomp porque o que tá
implementado lá resolve todos os casos e faz o que tem que fazer,
controlar a taxa nominal de significância (conduza um estudo de
simulação e verifique se for o caso). Os tipos de somas de
quadrados em si não têm importância porque as incertezas sobre as
médias estão na matriz de covariância das estimativas e são
invariantes a soma de quadrado. Além do mais, essa coisa de soma
de quadrado é particular da anova e comparações múltiplas de
estimativas podem ser aplicadas em qualquer situação, seja em GLM
e até mesmo para parâmetros em modelos de regressão não linear.
Esqueça uso de letras seguindo as médias. Faça um gráfico dos
contrastes do teu interesse e verifique se o valor nulo está
contido no intervalo de confiança. Para ilustrar, rode o CMR<br>
<br>
<span style="font-family:courier new,monospace">#------------------------------------------------------------------------------------------</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">require(doBy)</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace"># caso 1</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace"># experimento
balanceado e completamente cruzados níveis de bloc e trat</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">da <-
expand.grid(trat=gl(3,1), bloc=gl(2,2))</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">da$y1 <-
rnorm(nrow(da), 10, 0.1)</span><br style="font-family:courier
new,monospace">
<span style="font-family:courier new,monospace">str(da)</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">m0 <-
lm(y1~bloc+trat, da)</span><br style="font-family:courier
new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">ctr <-
popMatrix(m0, effect="trat")</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">dim(ctr)</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">V0 <- vcov(m0)</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">dim(V0)</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">vm0 <-
ctr%*%V0%*%t(ctr)</span><br style="font-family:courier
new,monospace">
<span style="font-family:courier new,monospace">vm0 # mesma
precisão e sem correlação</span><br style="font-family:courier
new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">#------------------------------------------------------------------------------------------</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace"># caso 2</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace"># experimento
desbalanceado e completamente cruzados níveis de bloc e trat</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">da$y2 <- da$y1</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">da$y2[1:2] <-
NA # trat 1 e 2 têm apenas 2 repetições (desbalanceamento)</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">m1 <-
lm(y2~bloc+trat, da)</span><br style="font-family:courier
new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">V1 <- vcov(m1)</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">vm1 <-
ctr%*%V1%*%t(ctr)</span><br style="font-family:courier
new,monospace">
<span style="font-family:courier new,monospace">vm1 # trat 1 e 2
tem maior variância mas fora da diagonal é zero!</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">#------------------------------------------------------------------------------------------</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace"># caso 3</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace"># experimento
desbalanceado e completamente cruzados níveis de bloc e trat</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">da$y3 <- da$y1</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">da$y3[c(1,4,9,12)]
<- NA # trat 1 não observado no bloc 1 (perda completa de
combinação)</span><br style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">m2 <-
lm(y3~bloc+trat, da)</span><br style="font-family:courier
new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">V2 <- vcov(m2)</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">vm2 <-
ctr%*%V2%*%t(ctr)</span><br style="font-family:courier
new,monospace">
<span style="font-family:courier new,monospace">vm2
# diferença de precisão</span><br style="font-family:courier
new,monospace">
<span style="font-family:courier new,monospace">round(cov2cor(vm2),3)
# agora tem presença de correção devido não ortogonalidade</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">#------------------------------------------------------------------------------------------</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace"># em qualquer
caso, multcomp pode comparar as médias, escolha 1 deles e faça</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">comb <-
combn(1:nlevels(da$trat), 2) # 1 vs 2, 1 vs 3, 2 vs 3</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">mcomp <-
ctr[comb[1,],]-ctr[comb[2,],] # matriz de contrastes 2 a 2</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">require(multcomp)</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">g0 <- glht(m2,
linfct=mcomp)</span><br style="font-family:courier
new,monospace">
<span style="font-family:courier new,monospace">summary(g0)</span><br
style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">plot(g0) #
diferenças nas amplitudes refletem o número de repetições</span><br
style="font-family:courier new,monospace">
<br style="font-family:courier new,monospace">
<span style="font-family:courier new,monospace">#------------------------------------------------------------------------------------------</span><br>
<br>
À disposição.<br>
Walmes.<br>
<br clear="all">
</font><span style="font-family:trebuchet ms,sans-serif">==========================================================================</span><br
style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">Walmes Marques
Zeviani</span><br style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">LEG (Laboratório
de Estatística e Geoinformação, 25.450418 S, 49.231759 W)</span><br
style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">Departamento de
Estatística - Universidade Federal do Paraná</span><br
style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">fone: (+55) 41
3361 3573</span><br style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">VoIP: (3361 3600)
1053 1173</span><br style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">e-mail: <a
href="mailto:walmes@ufpr.br" target="_blank">walmes@ufpr.br</a></span><br
style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">twitter:
@walmeszeviani</span><br style="font-family:trebuchet
ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">homepage: <a
href="http://www.leg.ufpr.br/%7Ewalmes" target="_blank">http://www.leg.ufpr.br/~walmes</a></span><br
style="font-family:trebuchet ms,sans-serif">
<span style="font-family:trebuchet ms,sans-serif">linux user number:
531218</span>
</body>
</html>