Python で二項信頼区間を計算する方法
二項確率の信頼区間は、次の式を使用して計算されます。
信頼区間 = p +/- z*(√ p(1-p) / n )
金:
- p: 「成功」の割合
- z:選択された Z 値
- n:サンプルサイズ
Python でこのタイプの信頼区間を計算する最も簡単な方法は、 statsmodelsパッケージのProportion_confint()関数を使用することです。
proportion_confint ( count , nobs , alpha = 0.05 , method = ' normal ' )
金:
- count : 成功した回数
- nobs : 試行の合計数
- alpha : 有意水準 (デフォルトは 0.05)
- Method : 信頼区間に使用する方法 (デフォルトは「normal」)
次の例は、この関数を実際に使用する方法を示しています。
例: Python で二項信頼区間を計算する
特定の法律を支持する郡の住民の割合を推定したいとします。
私たちは 100 人の住民から無作為にサンプルを選択することにし、そのうち 56 人がこの法律に賛成していることがわかりました。
Proportion_confint()関数を使用して、郡全体でこの法律が適用されている住民の真の割合の 95% 信頼区間を計算できます。
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)
この法律を支持する郡住民の真の割合の 95% 信頼区間は[.4627, .6573]です。
デフォルトでは、この関数は漸近正規近似を使用して信頼区間を計算します。ただし、メソッド引数を使用して別のメソッドを使用することもできます。
たとえば、二項信頼区間を計算するために R プログラミング言語で使用されるデフォルトの関数は、ウィルソン スコア区間です。
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)
これは、法律を支持する郡住民の真の割合の 95% 信頼区間が[.4623, .6533]であることを示しています。
この信頼区間は、正規近似を使用して計算された信頼区間とはわずかに異なります。
アルファ値を調整して、異なる信頼区間を計算することもできることに注意してください。
たとえば、アルファを 0.10 に設定して 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)
これは、法律を支持する郡住民の真の割合の 90% 信頼区間が[.4778, .6390]であることを示しています。
注: ここで、 position_confint()関数の完全なドキュメントを見つけることができます。
追加リソース
次のチュートリアルでは、Python で他の一般的な操作を実行する方法について説明します。