Pressuposto de normalidade de um teste t
Considere uma população grande da qual você pode colher muitas amostras diferentes de um tamanho específico. (Em um estudo específico, você geralmente coleta apenas uma dessas amostras.)
O teste t pressupõe que as médias das diferentes amostras são normalmente distribuídas; não assume que a população esteja normalmente distribuída.
Pelo teorema do limite central, as médias de amostras de uma população com variância finita se aproximam de uma distribuição normal, independentemente da distribuição da população. As regras práticas dizem que as médias da amostra são basicamente distribuídas normalmente desde que o tamanho da amostra seja de pelo menos 20 ou 30. Para que um teste t seja válido em uma amostra de tamanho menor, a distribuição da população teria que ser aproximadamente normal.
O teste t é inválido para amostras pequenas de distribuições não normais, mas é válido para amostras grandes de distribuições não normais.
Amostras pequenas de distribuições não normais
Como Michael observa abaixo, o tamanho da amostra necessário para a distribuição de médias para aproximar a normalidade depende do grau de não normalidade da população. Para distribuições aproximadamente normais, você não precisará de uma amostra tão grande quanto uma distribuição muito fora do normal.
Aqui estão algumas simulações que você pode executar no R para ter uma idéia disso. Primeiro, aqui estão algumas distribuições populacionais.
curve(dnorm,xlim=c(-4,4)) #Normal
curve(dchisq(x,df=1),xlim=c(0,30)) #Chi-square with 1 degree of freedom
A seguir, são apresentadas algumas simulações de amostras das distribuições populacionais. Em cada uma dessas linhas, "10" é o tamanho da amostra, "100" é o número de amostras e a função depois especifica a distribuição da população. Eles produzem histogramas das médias da amostra.
hist(colMeans(sapply(rep(10,100),rnorm)),xlab='Sample mean',main='')
hist(colMeans(sapply(rep(10,100),rchisq,df=1)),xlab='Sample mean',main='')
Para que um teste t seja válido, esses histogramas devem ser normais.
require(car)
qqp(colMeans(sapply(rep(10,100),rnorm)),xlab='Sample mean',main='')
qqp(colMeans(sapply(rep(10,100),rchisq,df=1)),xlab='Sample mean',main='')
Utilidade de um teste t
Devo observar que todo o conhecimento que acabei de transmitir é um tanto 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 foi ensinado a executar um teste t.