A maior rede de estudos do Brasil

Grátis
224 pág.
Estatistica usado o R

Pré-visualização | Página 34 de 50

da mediana e dos quartis, quantis, etc? Pois é, eles são
chamados de estatísticas de ordem porque eles criam uma ordenação ou um rank das observações.
A partir dessas ordens ou postos (ranks) é possível então fazer-se inferências sobre o nível de uma
variável qualquer.
Peraí, que história é essa de “nível”? Nós não estávamos falando de médias??? Pois é, aqui
há uma discussão. Muito embora à rigor os testes baseados em estatísticas de ordem estejam
testando a diferença de ordens mesmo, muitos autores tomam a liberdade de dar um salto e dizer
que estes testes estariam mesmo inferindo diferenças entre médias.
3
A rigor, o que estamos realmente testando são diferenças de medianas, que é umas dessas
ordens, mas que têm a característica de dividir nossa distribuição em partes iguais, ou seja
exatamente na metade. A fim de evitar confusões, eu acabo optando por ficar em cima do muro e
dizer que estamos testando diferenças nos níveis (conveniente, não?)
;-)
Tudo muito bonito, mas para que servem estes testes afinal de contas? O teste t não é
relativamente robusto em relação à distribuição Normal, por conta do TLC? Por que então eu usaria
um teste desses? Bem, é que nem sempre o TLC vai ajudar muito, especialmente se estamos
tratando de amostras pequenas.
Ah, mas isso é para essas variáveis que poderiam ser muito bem testadas pelo teste t, mas
temos também situações onde a primeira opção seria mesmo um teste desse tipo. Alguém arrisca
dizer que situação é essa?
Bem, mas vamos adiante. O R tem implementado também funções que realizam esses testes
não-paramétricos. Vamos aplicar o teste que corresponde ao teste t para uma amostra, para o
mesmo exemplo que utilizamos anteriormente:
> wilcox.test(energia, mu=7725)
 Wilcoxon signed rank test with continuity correction
data: energia 
V = 8, p-value = 0.0293
alternative hypothesis: true mu is not equal to 7725 
Warning message: 
Cannot compute exact p-value with ties in: wilcox.test.default(energia, mu
= 7725)
Como você deve ter notado, a função que calcula esse tipo de teste se chama
wilcox.test() e os argumentos que usamos são essencialmente os mesmos que tínhamos usado
anteriormente. A saída da função também é bem semelhante, se bem que algo mais resumida.
Vamos ver a saída em maior detalhe.
 Wilcoxon signed rank test with continuity correction
data: energia 
Essa parte é igualzinha ao do teste t, exceto pelo nome do teste que é diferente e por essa
correção de continuidade, que veremos mais tarde o que significa.
V = 8, p-value = 0.0293
Essa é a parte da saída que nos interessa, com a estatística calculada e com o p-valor que
corresponde a esse valor para essa estatística. Vamos ver o funcionamento disso mais adiante.
alternative hypothesis: true mu is not equal to 7725 
Também igual ao teste t anteriormente.
Warning message: 
Cannot compute exact p-value with ties in: wilcox.test.default(energia, mu
= 7725)
E aqui aparece um problema inerente ao teste não-paramétrico. É a questão dos empates nos
postos (ranks). Como nós veremos mais tarde, para esse teste é possível calcular o valor exato,
4
construindo a distribuição da estatística V. Porém quando o número de ranks é muito elevado ou na
presença de empates, esse cálculo exato fica bem mais complicado. No primeiro caso, essa
distribuição pode ser muito bem aproximada pela Normal, já que é uma distribuição simétrica em
torno de 0 . Mas para o caso dos empates, e para um número reduzido de observações, isso não
é verdade e muitas vezes o resultado assintótico pode ficar prejudicado.
Repare que a função wilcox.test() não calculou o valor exato por causa de empates,
apesar do tamanho da amostra ser bastante reduzido.
Mas vamos votar à nossa estatística V e tentar entender o que ela significa. Ele representa a
soma dos ranks positivos da diferença entre a nossa amostra e o valor a ser testado. Ihhh, complicou
bem... Vamos começar vendo a diferença qual é:
> energia-7725
 [1] -2465 -2255 -2085 -1545 -1335 -1210 -920 -210 -210 505 1045
Repare que das 11 observações, temos duas diferenças positivas e as demais negativas.
Repare também que temos um empate: dois valores são -210. Bem, o próximo passo é ordenarmos
essas diferenças, sem considerar o sinal, ou seja, vamos ordenar os seus valores absolutos. No R
podemos fazer assim:
> rank(abs(energia-7725))
 [1] 11.0 10.0 9.0 8.0 7.0 6.0 4.0 1.5 1.5 3.0 5.0
Tudo muito bonito, mas o que diabos são esses dois 1.5 que aparecem no nosso vetor???
Isso ocorreu justamente por causa do empate que nós tínhamos. Quando acontece um empate,
atribui-se o rank médio aos elementos empatados, o que seria apenas a média de fato. Nesse caso,
em termos absolutos, o 210 seria o primeiro elemento, rank número 1. como temos um segundo
210, que seria o rank número 2, temos que fazer (1 + 2)/2 = 1.5.
Muito bem, agora a nossa estatística V será a soma dos ranks para os valores cujas
diferenças haviam sido originalmente positivas. Isso pode ser feito “facilmente” no R:
> sum(rank(abs(energia-7725))[energia-7725>0])
[1] 8
Conseguiu entender esse código? Não? Então tente mais uma vez... Pode ser um exercício
interessante. Repare que estamos selecionando do vetor de ranks os valores cuja diferença é
positiva ([energia-7725>0]) e somando esse resultado.
Conferiu com o valor achado pelo R lá na saída?
Bom, o resto da teoria do cálculo dos p-valores ou áreas de rejeição para esta estatística,
deixo para a curiosidade de cada um procurar em um livro-texto.
A questão da aproximação pela Normal, em geral, para um número de diferenças não nulas
(i.e. diferentes de zero) de pelo menos 16 os resultados são bastante satisfatórios. Para os demais
resultados, existem valores tabelados para valores críticos do teste de Wilcoxon.
Só para lembrar da aula teórica, sob a hipótese nula, a estatística V tem média
nn1
4
 e variância 
n n1 2n1
24
. Bem, se houver empates, aí temos que descontar
um valor dessa variância, cujo cálculo é um pouco complicado, e que veremos com mais detalhes
no teste para duas amostras.
Teste t para duas amostras
Como você já deve ter depreendido da aula teórica, o teste t para duas amostras não difere
muito do teste para uma amostra apenas. A diferença é que testaremos a diferença entre duas
5
médias diferentes, entre duas amostras independentes e não mais a diferença entre uma média de
uma amostra e um número fixo. É claro que isso trará conseqüências em termos de cálculos, mas
não em termos de conceito.
O cálculo da estatística T nesse caso deve ser feito levando-se em conta ambas as médias a
serem testadas, e também ambas as variâncias das médias amostrais. De maneira geral:
T =

x1−

x 2
s1
2
n1
 s2
2
n2
O denominador dessa equação é o erro-padrão da diferença das médias, que nós podemos
apelidar aqui de sdif .
A questão é que classicamente se usa a condição onde as variâncias das amostras são
homogêneas, situação onde é possível calcular-se uma variância conjunta (é na verdade uma média
ponderada das variâncias de cada grupo.) Isso era bastante importante antigamente porque, para
calcular esses resultados na mão essa pressuposição é tratável. Assim, se assumirmos a
homogeneidade, podemos calcular a variância conjunta:
sconj
2 =
n1−1 s12n2−1 s22
n1n2−2
E então poderíamos reduzir a nossa equação para:
T =

x1−

x2
sconj
1
n1
 1
n2
Acontece que nem sempre é possível obter-se variâncias homogêneas e aproximações para
esses casos foram desenvolvidas para podermos obter resultados confiáveis mesmo sem essa
pressuposição. Uma dessas aproximações (existem outras) foi descrita por Welch, e é implementada
no R. O que acontece é que nós simplesmente usamos a equação lá de cima, para calcular o T, que
passa a não ser mais distribuído como uma tn 1 n 2− 2 mas a sua distribuição pode ser aproximada
por uma t com  ' graus de liberdade calculados assim:
 '=
 s12n1 s22n22
1
n1−1 s12n12 1n2−1 s22n22
Bem, vamos usar então um banco de exemplo do ISwR para estudar o nosso