Os relatos da morte do teste t foram muito exagerados?

25

Lendo os clássicos de todos os tempos, encontrei uma declaração que gostaria de esclarecer. Este é o post e minha pergunta se refere às considerações finais: "Tenho que observar que todo o conhecimento que acabei de transmitir é um pouco obsoleto; agora que temos computadores, podemos fazer melhor que os testes t. Como observa Frank, você provavelmente deseja usar os testes de Wilcoxon em qualquer lugar onde você foi ensinado a executar um teste t ".

A falta de preocupações sobre se é correto supor que a distribuição da amostra é normal o suficiente para executar o teste t é obviamente uma grande vantagem. E vejo que os computadores podem classificar longas listas de diferenças entre dois vetores de dados rapidamente ... Lembro-me de fazê-lo manualmente há muitos anos, mas discordo ...

Então, o teste t é realmente uma coisa do passado? E os testes de permutação? Eles são muito ad hoc no sentido de normalmente envolver a escrita de algumas linhas de código?

Antoni Parellada
fonte
3
O que torna um teste de permutação ad hoc ? Fisher considerou os testes t apropriados na medida em que o comportamento deles era próximo ao de um teste de permutação (desculpe, eu não tenho a citação exata à mão, se achar que vou dar), sugerindo que ele viu o teste de permutação como mais fundamental. Também não vejo dificuldades nos testes de permutação bicaudal. Mas talvez eu esteja me afastando em direção a uma resposta das sortes.
Glen_b -Reinstate Monica
11
Talvez algo a favor do teste t de variância igual seja a sua relação com a estimativa dos parâmetros em um modelo bastante simples que você pode querer entreter.
Scortchi - Restabelece Monica

Respostas:

22

Eu não diria que os testes t de uma amostra clássica (incluindo emparelhados) e de duas amostras com variância igual são exatamente obsoletos, mas há uma infinidade de alternativas que possuem excelentes propriedades e, em muitos casos, devem ser usadas.

Também não diria que a capacidade de realizar rapidamente testes de Wilcoxon-Mann-Whitney em amostras grandes - ou mesmo testes de permutação - é recente, eu fazia ambos rotineiramente há mais de 30 anos como estudante e a capacidade de fazê-lo tinha está disponível há muito tempo nesse ponto.

Então, aqui estão algumas alternativas e por que elas podem ajudar:

  1. Welch-Satterthwaite - quando você não tem certeza de que as variações serão próximas a iguais (se os tamanhos das amostras forem iguais, a suposição de variação igual não será crítica)

  2. Wilcoxon-Mann-Whitney - Excelente se as caudas forem normais ou mais pesadas que o normal, principalmente em casos que são quase simétricos. Se as caudas tendem a estar próximas do normal, um teste de permutação nos meios oferecerá um pouco mais de potência.

  3. testes t robustos - existem vários que têm boa potência no normal, mas também funcionam bem (e mantêm boa potência) sob alternativas de cauda mais pesada ou de certa forma distorcidas.

  4. GLMs - útil para contagens ou casos contínuos de inclinação à direita (por exemplo, gama), por exemplo; projetado para lidar com situações em que a variação está relacionada à média.

  5. efeitos aleatórios ou modelos de séries temporais podem ser úteis nos casos em que existem formas particulares de dependência

  6. Abordagens bayesianas , bootstrapping e uma infinidade de outras técnicas importantes que podem oferecer vantagens semelhantes às idéias acima. Por exemplo, com uma abordagem bayesiana, é bem possível ter um modelo que possa explicar um processo de contaminação, lidar com contagens ou dados distorcidos e lidar com formas particulares de dependência, tudo ao mesmo tempo .

Embora exista uma infinidade de alternativas úteis, o teste t padrão de duas amostras com variância e padrão de estoque antigo geralmente pode ter um bom desempenho em amostras grandes e de tamanho igual, desde que a população não esteja muito longe do normal (como ter cauda muito pesada) / skew) e temos quase independência.

As alternativas são úteis em várias situações em que podemos não estar tão confiantes com o teste t simples ... e, no entanto, geralmente apresentam um bom desempenho quando as premissas do teste t são atendidas ou estão próximas de serem atendidas.

O Welch é um padrão sensato se a distribuição tende a não se afastar muito do normal (com amostras maiores permitindo mais margem de manobra).

Embora o teste de permutação seja excelente, sem perda de potência em comparação com o teste t quando suas suposições se mantêm (e o benefício útil de deduzir diretamente sobre a quantidade de interesse), o Wilcoxon-Mann-Whitney é sem dúvida uma escolha melhor se caudas podem ser pesadas; com uma suposição adicional menor, o WMW pode tirar conclusões relacionadas à mudança de média. (Há outras razões pelas quais se pode preferir ao teste de permutação)

[Se você sabe que está lidando com contagens de palavras, tempos de espera ou tipos semelhantes de dados, a rota GLM geralmente é sensata. Se você souber um pouco sobre possíveis formas de dependência, isso também é prontamente tratado, e o potencial de dependência deve ser considerado.]

Portanto, embora o teste t certamente não seja uma coisa do passado, você quase sempre pode se sair tão bem ou quase tão bem quando se aplica, e potencialmente ganhar muito quando não se inscreve uma das alternativas . Ou seja, concordo amplamente com o sentimento nesse post relacionado ao teste t ... muitas vezes você provavelmente deve pensar em suas suposições antes mesmo de coletar os dados, e se alguma delas pode não ser realmente esperada para sustentar, com o teste t geralmente não há quase nada a perder em simplesmente não fazer essa suposição, já que as alternativas geralmente funcionam muito bem.

Se alguém está enfrentando o grande problema de coletar dados, certamente não há razão para não investir um pouco de tempo, sinceramente, considerando a melhor maneira de abordar suas inferências.

Observe que geralmente desaconselho o teste explícito de suposições - não apenas responde à pergunta errada, mas o faz e depois escolhe uma análise baseada na rejeição ou não rejeição da suposição, que afeta as propriedades de ambas as opções de teste; se você não puder fazer uma suposição razoavelmente segura (seja porque conhece o processo suficientemente bem que pode assumi-lo ou porque o procedimento não é sensível a ele em suas circunstâncias), geralmente falando, é melhor usar o procedimento isso não assume.


# set up some data
x <- c(53.4, 59.0, 40.4, 51.9, 43.8, 43.0, 57.6)
y <- c(49.1, 57.9, 74.8, 46.8, 48.8, 43.7)
xyv <- stack(list(x=x,y=y))$values
nx  <- length(x)

# do sample-x mean for all combinations for permutation test
permmean = combn(xyv,nx,mean)

# do the equivalent resampling for a randomization test
randmean <- replicate(100000,mean(sample(xyv,nx)))

# find p-value for permutation test
left  = mean(permmean<=mean(x))
# for the other tail, "at least as extreme" being as far above as the sample
# was below
right = mean(permmean>=(mean(xyv)*2-mean(x)))
pvalue_perm = left+right
"Permutation test p-value"; pvalue_perm

# this is easier: 
#      pvalue = mean(abs(permmean-mean(xyv))>=abs(mean(x)-mean(xyv))) 
# but I'd keep left and right above for adapting to other tests

# find p-value for randomization test
left  = mean(randmean<=mean(x))
right = mean(randmean>=(mean(xyv)*2-mean(x)))
pvalue_rand = left+right
"Randomization test p-value"; pvalue_rand

(Os valores de p resultantes são 0,538 e 0,539, respectivamente; o teste t ordinário correspondente de duas amostras tem um valor p de 0,504 e o teste t Welch-Satterthwaite tem um valor p de 0,522.)

Observe que o código para os cálculos é, em cada caso, 1 linha para as combinações para o teste de permutação e o valor p também pode ser feito em 1 linha.

Adaptar isso a uma função que executou um teste de permutação ou teste de randomização e produziu uma saída como um teste t seria uma questão trivial.

Aqui está uma exibição dos resultados:

insira a descrição da imagem aqui

# Draw a display to show distn & p-vale region for both 
opar <- par()
par(mfrow=c(2,1))
hist(permmean, n=100, xlim=c(45,58))
abline(v=mean(x), col=3)
abline(v=mean(xyv)*2-mean(x), col=3, lty=2)
abline(v=mean(xyv), col=4)
hist(randmean, n=100, xlim=c(45,58))
abline(v=mean(x), col=3)
abline(v=mean(xyv)*2-mean(x), col=3, lty=2)
abline(v=mean(xyv), col=4)

par(opar)
Glen_b -Reinstate Monica
fonte
Na linha 16 do primeiro bloco de código, há um pequeno erro de digitação. Eu acredito que deveria ler: # pvalue = mean (abs (permmean-mean (xyv))> = abs (mean (x) -mean (xyv))). Além disso, por que a cauda direita é testada como correta = média (permmeana> = 2 * média (xyv) - média (x))?
Antoni Parellada 25/11
Boa resposta (+1), mas em geral não concordo com a afirmação de que geralmente há pouco a perder por não fazer suposições, a menos que se refira apenas ao teste t. Não é claro se é para ser uma afirmação geral ou não. Para modelos mais complexos e tamanhos limitados de amostra, as premissas são frequentemente cruciais, por exemplo, na forma de anteriores fracamente informativos.
Erik
11
@Erik Não era uma declaração geral. Deixe-me esclarecer
Glen_b -Reinstar Monica 25/11/2015
11
Boa resposta, +1. Quaisquer pensamentos sobre o usottestes em estimativas de parâmetros OLS? É isso que uso regularmente. "Normal"ttestes para comparar médias entre dois vetores, nem tanto.
S. Kolassa - Restabelece Monica
2
@ Stephen, existem muitas outras considerações (e um conjunto reduzido de alternativas amplamente usadas, pelo menos se olharmos para a regressão múltipla) que responderia nesse caso seria longo e apresentaria algumas diferenças substanciais.
Glen_b -Reinstala Monica 25/11