データの集合が正規分布とみなせるかの検定を Python/SciPy で計算してみましたが、Shapiro-Wilk と Anderson-Darling で出力の形式が異なっていたことが気になったので [1] 、同じことを R でもやってみました。
normality_test.R
以下に実行例を示しました。
> library(nortest) > > # sample dataset > data <- rnorm(150, mean = 20, sd = 5) > print(data) [1] 12.056125 12.501325 17.523703 15.480088 17.297640 20.316994 21.197035 20.667794 17.005183 [10] 28.084337 21.317987 20.472167 17.468762 16.851357 27.206106 11.313712 18.710486 17.259417 ... ... [145] 16.199152 22.915103 20.473811 27.863051 23.514593 24.095631 > > # Shapiro-Wilk test > result <- shapiro.test(data) > print(result) Shapiro-Wilk normality test data: data W = 0.99663, p-value = 0.9831 > > # Anderson-Darling test > result <- ad.test(data) > print(result) Anderson-Darling normality test data: data A = 0.23304, p-value = 0.7945
R の nortest パッケージを使って、Anderson-Darling 検定をおこなうと、出力は Shapiro-Wilk 検定と同じく p-value で出力されます。このように、どちらも p-value で検定結果を得られる方が、運用上は都合が良いので、SciPy でも p-value で検定結果を得られるように変更します(次回)。
参考サイト
- bitWalk's: 正規性の検定 (SciPy) [2021-04-21]
- CRAN - Package nortest
にほんブログ村
0 件のコメント:
コメントを投稿