Como calcular intervalos de confiança em python


Um intervalo de confiança para uma média é um intervalo de valores que provavelmente contém uma média populacional com um certo nível de confiança.

É calculado da seguinte forma:

Intervalo de confiança = x +/- t*(s/√n)

Ouro:

  • x : média amostral
  • t: valor t que corresponde ao nível de confiança
  • s: desvio padrão da amostra
  • n: tamanho da amostra

Este tutorial explica como calcular intervalos de confiança em Python.

Intervalos de confiança usando a distribuição t

Se estivermos trabalhando com uma amostra pequena (n <30), podemos usar a função t.interval() da biblioteca scipy.stats para calcular um intervalo de confiança para uma média populacional.

O exemplo a seguir mostra como calcular um intervalo de confiança para a altura média real da população (em polegadas) de uma determinada espécie de planta, usando uma amostra de 15 plantas:

 import numpy as np
import scipy.stats as st

#define sample data
data = [12, 12, 13, 13, 15, 16, 17, 22, 23, 25, 26, 27, 28, 28, 29]

#create 95% confidence interval for population mean weight
st.t.interval(alpha=0.95, df=len(data)-1, loc=np.mean(data), scale=st.sem(data)) 

(16.758, 24.042)

O intervalo de confiança de 95% para o verdadeiro tamanho médio da população é (16,758, 24,042) .

Você notará que quanto maior o nível de confiança, maior será o intervalo de confiança. Por exemplo, veja como calcular um IC de 99% para exatamente os mesmos dados:

 #create 99% confidence interval for same sample
st.t.interval(alpha= 0.99 , df=len(data)-1, loc=np.mean(data), scale=st.sem(data)) 

(15.348, 25.455)

O intervalo de confiança de 99% para o verdadeiro tamanho médio da população é (15,348, 25,455) . Observe que esse intervalo é maior que o intervalo de confiança anterior de 95%.

Intervalos de confiança usando a distribuição normal

Se estivermos trabalhando com amostras maiores (n≥30), podemos assumir que a distribuição amostral da média amostral é normalmente distribuída (graças ao teorema do limite central ) e podemos, em vez disso, usar a função norma. interval() da biblioteca scipy .stats.

O exemplo a seguir mostra como calcular um intervalo de confiança para a altura média real da população (em polegadas) de uma determinada espécie de planta, usando uma amostra de 50 plantas:

 import numpy as np
import scipy.stats as st

#define sample data
np.random.seed(0)
data = np.random.randint(10, 30, 50)

#create 95% confidence interval for population mean weight
st.norm.interval(alpha=0.95, loc=np.mean(data), scale=st.sem(data))

(17.40, 21.08)

O intervalo de confiança de 95% para o verdadeiro tamanho médio da população é (17,40, 21,08) .

E tal como acontece com a distribuição t, níveis de confiança mais elevados levam a intervalos de confiança mais amplos. Por exemplo, veja como calcular um IC de 99% para exatamente os mesmos dados:

 #create 99% confidence interval for same sample
st.norm.interval(alpha= 0.99 , loc=np.mean(data), scale=st.sem(data))

(16.82, 21.66)

O intervalo de confiança de 95% para o verdadeiro tamanho médio da população é (17,82, 21,66) .

Como interpretar intervalos de confiança

Suponha que nosso intervalo de confiança de 95% para a altura média real de uma espécie de planta seja:

Intervalo de confiança de 95% = (16,758, 24,042)

A forma de interpretar este intervalo de confiança é a seguinte:

Há 95% de chance de que o intervalo de confiança de [16,758, 24,042] contenha a verdadeira altura média das plantas da população.

Outra maneira de dizer a mesma coisa é que há apenas 5% de probabilidade de que a verdadeira média da população esteja fora do intervalo de confiança de 95%. Ou seja, há apenas 5% de chance de que a altura média real da planta seja inferior a 16,758 polegadas ou superior a 24,042 polegadas.

Add a Comment

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