Como calcular um intervalo de confiança binomial em python
Um intervalo de confiança para uma probabilidade binomial é calculado usando a seguinte fórmula:
Intervalo de confiança = p +/- z*(√ p(1-p) / n )
Ouro:
- p: proporção de “sucessos”
- z: o valor z escolhido
- n: tamanho da amostra
A maneira mais fácil de calcular esse tipo de intervalo de confiança em Python é usar a função propor_confint() do pacote statsmodels :
proportion_confint ( count , nobs , alpha = 0.05 , method = ' normal ' )
Ouro:
- contagem : Número de sucessos
- nobs : número total de tentativas
- alfa : nível de significância (o padrão é 0,05)
- método : método a ser usado para o intervalo de confiança (o padrão é “normal”)
O exemplo a seguir mostra como usar esta função na prática.
Exemplo: Calcular intervalo de confiança binomial em Python
Suponha que queiramos estimar a proporção de residentes num condado que são a favor de uma determinada lei.
Decidimos selecionar uma amostra aleatória de 100 residentes e descobrimos que 56 deles são a favor da lei.
Podemos usar a função propor_confint() para calcular o intervalo de confiança de 95% para a verdadeira proporção de residentes que têm esta lei em todo o condado:
from statsmodels. stats . proportion import proportion_confint #calculate 95% confidence interval with 56 successes in 100 trials proportion_confint(count= 56 , nobs= 100 ) (0.4627099463758483, 0.6572900536241518)
O intervalo de confiança de 95% para a verdadeira proporção de residentes do condado que apoiam a lei é [0,4627, 0,6573] .
Por padrão, esta função usa a aproximação normal assintótica para calcular o intervalo de confiança. No entanto, podemos usar o argumento do método para usar um método diferente.
Por exemplo, a função padrão usada na linguagem de programação R para calcular um intervalo de confiança binomial é o intervalo de pontuação de Wilson.
Podemos usar a seguinte sintaxe para especificar este método ao calcular o intervalo de confiança em Python:
from statsmodels. stats . proportion import proportion_confint #calculate 95% confidence interval with 56 successes in 100 trials proportion_confint(count= 56 , nobs= 100 , method=' wilson ') (0.4622810465167698, 0.6532797336983921)
Isto nos diz que o intervalo de confiança de 95% para a verdadeira proporção de residentes do condado que apoiam a lei é [0,4623, 0,6533] .
Este intervalo de confiança é ligeiramente diferente daquele calculado utilizando a aproximação normal.
Observe que também podemos ajustar o valor alfa para calcular um intervalo de confiança diferente.
Por exemplo, podemos definir alfa como 0,10 para calcular um intervalo de confiança de 90%:
from statsmodels. stats . proportion import proportion_confint #calculate 90% confidence interval with 56 successes in 100 trials proportion_confint(count= 56 , nobs= 100 , alpha= 0.10 , method=' wilson ') (0.47783814499647415, 0.6390007285095451)
Isto nos diz que o intervalo de confiança de 90% para a verdadeira proporção de residentes do condado que apoiam a lei é [0,4778, 0,6390] .
Nota : Você pode encontrar a documentação completa para a função propor_confint() aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns em Python:
Como traçar um intervalo de confiança em Python
Como usar distribuição binomial em Python