Python でフリードマン テストを実行する方法


フリードマン検定は、反復測定 ANOVA に代わるノンパラメトリックな検定です。各グループに同じ被験者が含まれる 3 つ以上のグループの平均値の間に統計的に有意な差があるかどうかを判断するために使用されます。

このチュートリアルでは、Python でフリードマン テストを実行する方法を説明します。

例: Python のフリードマン テスト

研究者は、3 つの異なる薬に対する患者の反応時間が等しいかどうかを知りたいと考えています。これをテストするために、彼は 3 つの薬のそれぞれに対する 10 人の異なる患者の反応時間 (秒単位) を測定しました。

次の手順に従って、Python でフリードマン テストを実行し、薬物間で平均反応時間が異なるかどうかを判断します。

ステップ 1: データを入力します。

まず、3 つの薬剤それぞれに対する各患者の応答時間を含む 3 つのテーブルを作成します。

 group1 = [4, 6, 3, 4, 3, 2, 2, 7, 6, 5]
group2 = [5, 6, 8, 7, 7, 8, 4, 6, 4, 5]
group3 = [2, 4, 4, 3, 2, 2, 1, 4, 3, 2]

ステップ 2: フリードマン テストを実行します。

次に、scipy.stats ライブラリのfriedmanchisquare() 関数を使用してフリードマン テストを実行します。

 from scipy import stats

#perform Friedman Test
stats. friedmanchisquare (group1, group2, group3)

(statistic=13.3514, pvalue=0.00126)

ステップ 3: 結果を解釈します。

フリードマン検定では、次の帰無仮説と対立仮説が使用されます。

帰無仮説 (H 0 ):各母集団の平均は等しい。

対立仮説: (Ha):少なくとも 1 つの母集団平均が他の平均とは異なります。

この例では、検定統計量は13.3514で、対応する p 値は p = 0.00126です。この p 値は 0.05 未満であるため、平均応答時間は 3 つの薬剤すべてで同じであるという帰無仮説を棄却できます。

言い換えれば、使用される薬剤の種類によって反応時間に統計的に有意な差が生じると結論付けるのに十分な証拠があるということです。

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です