正規性の検定には一般的にシャピロ・ウィルク検定 Shapiro–Wilk testとコルモゴロフ-スミルノフ検定 Kolmogorov–Smirnov testの2つが用いられる。シャピロ・ウィルク検定 は小さな標本(n が50以下)の場合に好ましいと言われ、コルモゴロフ-スミルノフ検定はより大きな標本が推奨されている。ただし、一般的に用いられる「50」という数字が確かか否かという点には議論がある。
正規性の検定についての基本的な解説はこちらの論文を参照。
- Ghasemi, A., & Zahediasl, S. (2012). Normality Tests for Statistical Analysis: A Guide for Non-Statisticians. International Journal of Endocrinology and Metabolism, 10(2), 486–489. https://doi.org/10.5812/ijem.3505 https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3693611/
50という数字を挙げている文献は下記である。
- Elliott, A. C., & Woodward, W. A. (2007). Statistical analysis quick reference guidebook: With SPSS examples. Sage Publications.
シャピロ・ウィルク検定 Shapiro–Wilk test
Rに同梱されているirisデータを使用する。
- iris…あやめ
- Sepal…がく
- Width…幅
- Petal…花弁
data(iris)
head(iris$Sepal.Length)
がくの長さのデータ
5.1 4.9 4.7 4.6 5.0 5.4
帰無仮説 (H0) は標本分布が正規分布に従うことである。
shapiro.test(iris$Sepal.Width)
結果。
Shapiro-Wilk normality test
data: iris$Sepal.Width
W = 0.98492, p-value = 0.1012
帰無仮説は棄却さなかった。従って、正規分布に従わないとはいえず、正規分布を仮定して良いことがよかった。
コルモゴロフ-スミルノフ検定 Kolmogorov–Smirnov test
こちらも帰無仮説 (H0)は標本分布が正規分布に従うことである。
pnormを指定すると1標本における正規性の検定となる。
d1 <- iris$Sepal.Width
ks.test(x=d1,y="pnorm",mean=mean(d1),sd=sd(d1))
結果。
One-sample Kolmogorov-Smirnov test
data: d1
D = 0.10566, p-value = 0.07023
alternative hypothesis: two-sided
帰無仮説は棄却さなかった。従って、正規分布に従わないとはいえず、正規分布を仮定して良いことがよかった。
カイパー検定 Kuiper test
1年のうちの1日や、あるいは1週間のうちの1日といったように、独立変数が周期性を持つ場合、カイパー検定の方がより適切である。 コルモゴロフ–スミルノフ検定 – Wikipedia
データはcircular型のものを用いる。circular型についてはこちらを参照のこと。
circularパッケージを用いる。
library(circular)
## サンプルデータ
data01 <- circular(runif(100, 0, 2*pi))
head(data01)
サンプルデータは以下のようなものである。
Circular Data:
Type = angles
Units = radians
Template = none
Modulo = asis
Zero = 0
Rotation = counter
[1] 3.8045895 0.2863594 2.5420636 0.8680562 1.0686257 2.9055623
カイパー検定は下記のように書く。
kuiper.test(data01)
結果。
Kuiper's Test of Uniformity
Test Statistic: 1.3478
P-value > 0.15