Como realizar testes de hipóteses em python (com exemplos)


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

Este tutorial explica como realizar os seguintes testes de hipótese em Python:

  • Um teste t de amostra
  • Teste T de duas amostras
  • Teste t de amostras pareadas

Vamos!

Exemplo 1: um exemplo de teste t em Python

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

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

Para testar isso, coletamos uma amostra aleatória simples de tartarugas com os seguintes pesos:

Peso : 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() na biblioteca scipy.stats para realizar 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]

#perform one sample t-test
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 bicaudal correspondente é 0,1389 .

As duas hipóteses para este teste t em uma amostra específica são as seguintes:

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

Como o valor p do nosso teste (0,1389) é maior que alfa = 0,05, não conseguimos rejeitar a hipótese nula do teste.

Não temos evidências suficientes para dizer que o peso médio desta espécie específica de tartaruga seja diferente de 310 libras.

Exemplo 2: teste t de duas amostras em Python

Um teste t de duas amostras é usado 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 isso, coletamos 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() na biblioteca scipy.stats para executar estes dois exemplos de teste t:

 import scipy. stats as stats

#define array of turtle weights for each 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-tests
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 bicaudal correspondente é 0,0463 .

As duas suposições para este teste t específico de duas amostras são:

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

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

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

Exemplo 3: teste t de amostras emparelhadas em Python

Um teste t de amostras pareadas é usado para comparar as médias de duas amostras quando cada observação em uma amostra pode ser associada a uma observação na outra amostra.

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

Para testar isso, podemos recrutar uma amostra aleatória simples de 12 jogadores de basquete 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 depois medir novamente o seu salto vertical máximo no final do mês.

Os dados a seguir mostram a altura máxima do salto (em polegadas) antes e depois de usar o programa de treinamento para cada jogador:

Frente : 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

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

 import scipy. stats as stats

#define before and after max jump heights
before = [22, 24, 20, 19, 19, 20, 22, 25, 24, 23, 22, 21]
after = [23, 25, 20, 24, 18, 22, 23, 28, 24, 25, 24, 20]

#perform paired samples t-test
stats. ttest_rel (a=before, b=after)

Ttest_relResult(statistic=-2.5289026942943655, pvalue=0.02802807458682508)

A estatística do teste t é –2,5289 e o valor p bicaudal correspondente é 0,0280 .

As duas suposições para este teste t de amostras pareadas específico são:

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

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

Isto significa que temos evidências suficientes para dizer que a altura média do salto antes e depois de usar o programa de treinamento não é igual.

Recursos adicionais

Você pode usar as seguintes calculadoras online para realizar vários testes t automaticamente:

Um exemplo de calculadora de teste t
Calculadora de teste t de duas amostras
Calculadora de teste t de amostras emparelhadas

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *