Python でフィッシャーの正確テストを実行する方法
フィッシャーの直接確率検定は、 2 つのカテゴリ変数間に有意な関連があるかどうかを判断するために使用されます。
これは通常、2 × 2 テーブル内の 1 つ以上のセル数が 5 未満である場合に、独立性のカイ二乗検定の代替として使用されます。
このチュートリアルでは、Python でフィッシャーの正確確率テストを実行する方法について説明します。
例: Python でのフィッシャーの正確検定
特定の大学での政党への選好に性別が関連しているかどうかを知りたいとします。
これを調査するために、キャンパス内の 25 人の学生をランダムに調査しました。性別に基づいた民主党または共和党の学生数を以下の表に示します。
民主党 | 共和党 | |
---|---|---|
女性 | 8 | 4 |
男 | 4 | 9 |
性別と政党の好みの間に統計的に有意な関連があるかどうかを判断するには、次の手順を使用して Python でフィッシャーの正確確率検定を実行します。
ステップ 1:データを作成します。
まず、データを保持するテーブルを作成します。
data = [[8, 4], [4, 9]]
ステップ 2: フィッシャーの正確確率検定を実行します。
次に、SciPy ライブラリのFisher_exact 関数を使用してフィッシャーの正確検定を実行できます。この関数は次の構文を使用します。
fisher_exact(テーブル、alternative=’2 つの顔’)
金:
- 表: 2×2 分割表
- 代替:対立仮説を定義します。デフォルトは「両側」ですが、片側テストの場合は「より少ない」または「より大きい」を選択することもできます。
次のコードは、特定の例でこの関数を使用する方法を示しています。
import scipy.stats as stats print(stats.fisher_exact(data)) (4.5, 0.1152)
検定の p 値は0.1152です。
フィッシャーの正確検定では、次の帰無仮説と対立仮説が使用されます。
- H 0 : (帰無仮説) 2 つの変数は独立しています。
- H 1 : (対立仮説) 2 つの変数は独立していません。
この p 値は 0.05 未満ではないため、帰無仮説は棄却されません。
したがって、性別と政党の好みの間に重大な関連があると言える十分な証拠はありません。
言い換えれば、性別と政党の好みは独立しています。