So-net無料ブログ作成

不等分散のときのKruskal-Wallis検定 [統計]

不等分散のときに、Kruskal-Wallis検定が正しい結果をかえすか、ためしてみました。検索してみると、不等分散のときはKruskal-Wallis、みたいなことが かかれているところも みつかるもので。

Rコードです。

結果です。

> test_norm(R = 10000, N = c(15, 30, 45), mu = c(0, 0, 0), sigma = c(1, 1, 1))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.0498
2 Kruskal-Wallis 0.0484

Rplot01.png

> test_norm(R = 10000, N = c(30, 30, 30), mu = c(0, 0, 0), sigma = c(1, 1, 1))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.0481
2 Kruskal-Wallis 0.0473

Rplot02.png

> test_norm(R = 10000, N = c(45, 30, 15), mu = c(0, 0, 0), sigma = c(1, 1, 1))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.0486
2 Kruskal-Wallis 0.0448

Rplot03.png

分散が同じなら、ANOVAでもKruskal-Wallisでも、p<0.05となる割合はだいたい0.05となります。

> test_norm(R = 10000, N = c(15, 30, 45), mu = c(0, 0, 0), sigma = c(1, 2, 4))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.0176
2 Kruskal-Wallis 0.0285

Rplot04.png

> test_norm(R = 10000, N = c(30, 30, 30), mu = c(0, 0, 0), sigma = c(1, 2, 4))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.0680
2 Kruskal-Wallis 0.0675

Rplot05.png

> test_norm(R = 10000, N = c(45, 30, 15), mu = c(0, 0, 0), sigma = c(1, 2, 4))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.1957
2 Kruskal-Wallis 0.1094

Rplot06.png

分散が異なる場合には、ANOVAでもKruskal-Wallisでも、p<0.05となる割合は0.05からずれます。

> test_norm(R = 10000, N = c(30, 60, 90), mu = c(0, 0, 0), sigma = c(1, 2, 4))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.0186
2 Kruskal-Wallis 0.0300

Rplot07.png

> test_norm(R = 10000, N = c(60, 60, 60), mu = c(0, 0, 0), sigma = c(1, 2, 4))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.0733
2 Kruskal-Wallis 0.0708

Rplot08.png

> test_norm(R = 10000, N = c(90, 60, 30), mu = c(0, 0, 0), sigma = c(1, 2, 4))
# A tibble: 2 x 2
          method    lt5
          <fctr>  <dbl>
1          ANOVA 0.1906
2 Kruskal-Wallis 0.1171

Rplot09.png

サンプルサイズをおおきくしても、やはりずれます。


タグ:R
nice!(1)  コメント(0) 
共通テーマ:日記・雑感

nice! 1

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント