Python で mann-whitney u 検定を実行する方法


マン-ホイットニー U 検定は、標本分布が正規分布しておらず、標本サイズが小さい (n < 30) 場合に、2 つの標本間の差異を比較するために使用されます。

これは、2 サンプル t 検定と同等のノンパラメトリックとみなされます

このチュートリアルでは、Python でマン-ホイットニー U 検定を実行する方法を説明します。

例: Python での Mann-Whitney U 検定

研究者らは、燃料処理によって車の平均燃費が変化するかどうかを知りたいと考えています。これをテストするために、燃料処理を行った 12 台の車と処理を行わなかった 12 台の車の mpg を測定しました。

サンプルサイズが小さく、研究者らはサンプル分布が正規分布ではないのではないかと疑ったため、マン・ホイットニーの U 検定を実行して、2 つのグループ間に mpg に統計的に有意な差があるかどうかを判断することにしました。

Python で Mann-Whitney U テストを実行するには、次の手順を実行します。

ステップ 1: データを作成します。

まず、各車グループの燃費値を保持する 2 つのテーブルを作成します。

 group1 = [20, 23, 21, 25, 18, 17, 18, 24, 20, 24, 23, 19]
group2 = [24, 25, 21, 22, 23, 18, 17, 28, 24, 27, 21, 23]

ステップ 2: マン・ホイットニー U 検定を実行します。

次に、scipy.stats ライブラリのmannwhitneyu() 関数を使用して、次の構文を使用する Mann-Whitney U 検定を実行します。

mannwhitneyu(x, y, use_continuity=True,alternative=None)

金:

  • x:グループ 1 からのサンプル観察の表
  • y:グループ 2 からのサンプル観察の表
  • use_continuity:連続性補正 (1/2) を考慮する必要がある場合。デフォルトは True です。
  • 代替:対立仮説を定義します。デフォルトは「なし」で、「両側」p 値の半分の p 値が計算されます。その他のオプションには、「両面」、「レス」、「プラス」などがあります。

特定の例でこの関数を使用する方法は次のとおりです。

 import scipy.stats as stats

#perform the Mann-Whitney U test
stats. mannwhitneyu (group1, group2, alternative=' two-sided ')

(statistic=50.0, pvalue=0.2114)

検定統計量は50.0で、対応する両側 p 値は0.2114です。

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

この例では、マン-ホイットニーの U 検定では次の帰無仮説と対立仮説が使用されます。

H 0 : MPG は 2 つのグループ間で等しい

H A : MPG は 2 つのグループ間で等しくありません

p 値 ( 0.2114 ) は 0.05 未満ではないため、帰無仮説を棄却できません。

これは、真の平均mpgが2つのグループ間で異なると言える十分な証拠がないことを意味します。

追加リソース

次のチュートリアルでは、さまざまな統計ソフトウェアでマン-ホイットニー U 検定を実行する方法を説明します。

Excel でマン-ホイットニー U 検定を実行する方法
R でマン-ホイットニー U 検定を実行する方法
SPSS でマン-ホイットニー U 検定を実行する方法

コメントを追加する

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