Um teste de hipóteses é um teste estatístico formal que utilizamos para rejeitar ou não rejeitar uma hipótese estatística.

Este tutorial explica como efetuar os seguintes testes de hipóteses em Python:

  • Teste t de uma amostra
  • Teste t de duas amostras
  • Teste t de amostras emparelhadas

Vamos lá!

Exemplo 1: Teste t de uma amostra em Python

Um teste t de uma amostra é utilizado para testar se a média de uma população é ou não igual a um determinado valor.

Por exemplo, suponhamos que queremos saber se o peso médio de uma determinada espécie de tartaruga é ou não igual a 310 libras.

Para testar isto, vamos recolher uma amostra aleatória simples de tartarugas com os seguintes pesos:

Pesos : 300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303

O código a seguir mostra como usar a função ttest_1samp() do scipy.stats para efetuar um teste t de uma amostra:

 import scipy.stats as stats #define data data = [ 300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303] #realizar um teste-t de amostra stats. ttest_1samp (a=data, popmean= 310 ) Ttest_1sampResult(statistic=-1.5848116313861254, pvalue=0.1389944275158753) 

A estatística do teste t é -1.5848 e o valor p bilateral correspondente é 0.1389 .

As duas hipóteses para este teste t específico de uma amostra são as seguintes

  • H 0 : µ = 310 (o peso médio para esta espécie de tartaruga é de 310 libras)
  • H A : µ ≠310 (o peso médio é não 310 libras)

Porque o valor p do nosso teste (0.1389) é superior a alfa = 0,05, não rejeitamos a hipótese nula do teste.

Não dispomos de provas suficientes para afirmar que o peso médio desta espécie específica de tartaruga é diferente de 310 libras.

Exemplo 2: Teste t de duas amostras em Python

O teste t para duas amostras é utilizado para testar se as médias de duas populações são iguais ou não.

Por exemplo, suponhamos que queremos saber se o peso médio de duas espécies diferentes de tartarugas é igual ou não.

Para testar isto, recolhemos uma amostra aleatória simples de tartarugas de cada espécie com os seguintes pesos:

Amostra 1 : 300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303

Amostra 2 : 335, 329, 322, 321, 324, 319, 304, 308, 305, 311, 307, 300, 305

O código a seguir mostra como usar a função ttest_ind() da classe scipy.stats para efetuar este teste t de duas amostras:

 import scipy. stats as stats #define array of turtle weights for each sample sample sample1 = [300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303] sample2 = [335, 329, 322, 321, 324, 319, 304, 308, 305, 311, 307, 300, 305] #perform two sample t-test stats. ttest_ind (a=sample1, b=sample2) Ttest_indResult(statistic=-2.1009029257555696, pvalue=0.04633501389516516) 

A estatística do teste t é - 2.1009 e o valor p bilateral correspondente é 0.0463 .

As duas hipóteses para este teste t específico de duas amostras são as seguintes

  • H 0 : µ 1 = µ 2 (o peso médio das duas espécies é igual)
  • H A : µ 1 ≠ µ 2 (o peso médio das duas espécies não é igual)

Uma vez que o valor p do teste (0,0463) é inferior a 0,05, rejeitamos a hipótese nula.

Isto significa que temos provas suficientes para afirmar que o peso médio entre as duas espécies não é igual.

Exemplo 3: Teste t de amostras emparelhadas em Python

O teste t para amostras emparelhadas é utilizado para comparar as médias de duas amostras quando cada observação numa amostra pode ser emparelhada com uma observação na outra amostra.

Por exemplo, suponhamos que queremos saber se um determinado programa de treino é ou não capaz de aumentar o salto vertical máximo (em polegadas) dos jogadores de basquetebol.

Para testar isto, podemos recrutar uma amostra aleatória simples de 12 jogadores de basquetebol universitário e medir cada um dos seus saltos verticais máximos. Depois, podemos fazer com que cada jogador utilize o programa de treino durante um mês e, em seguida, medir novamente o seu salto vertical máximo no final do mês.

Os dados seguintes mostram a altura máxima do salto (em polegadas) antes e depois da utilização do programa de treino para cada jogador:

Antes de : 22, 24, 20, 19, 19, 20, 22, 25, 24, 23, 22, 21

Depois de : 23, 25, 20, 24, 18, 22, 23, 28, 24, 25, 24, 20

O código a seguir mostra como usar a função ttest_rel() da classe scipy.stats para efetuar este teste t de amostras emparelhadas:

 import scipy. stats as stats #define as alturas máximas de salto antes e depois antes = [22, 24, 20, 19, 19, 20, 22, 25, 24, 23, 22, 21] depois = [23, 25, 20, 24, 18, 22, 23, 28, 24, 25, 24, 20] #realiza o teste t de amostras emparelhadas stats. ttest_rel (a=antes, b=depois) Ttest_relResult(statistic=-2.5289026942943655, pvalue=0.02802807458682508) 

A estatística do teste t é - 2.5289 e o valor p bilateral correspondente é 0.0280 .

As duas hipóteses para este teste t de amostras emparelhadas são as seguintes

  • H 0 : µ 1 = µ 2 (a altura média do salto antes e depois da utilização do programa é igual)
  • H A : µ 1 ≠ µ 2 (a altura média do salto antes e depois da utilização do programa não é igual)

Uma vez que o valor p do teste (0,0280) é inferior a 0,05, rejeitamos a hipótese nula.

Isto significa que temos provas suficientes para afirmar que a altura média do salto antes e depois da utilização do programa de treino não é igual.