Smirnov-Grubbs の外れ値の検定
statistics/outlier/smirnov_grubbs
2018/07/30 更新
- 検定の手順
- R を使った検定
広告
検定の手順
Smirnov-grubbs test (単に grubbs test という場合もある)は、データが 正規分布 に従うとき、含まれる外れ値を検出する方法である (1, 3)。
帰無仮説: 全てのデータは同じ母集団からのものである。
対立仮説: データのうち、最大のものは外れ値である。
- 標本の大きさを n、データを X1, X2, ...., Xn とする。
- 平均値を Xm、不偏分散を U とする。
- 最大または最小となる測定値 Xi について、次の式から統計量 Ti を求める。

- 統計数値表から、有意点 t を求める。
広告
R を使った検定
R のパッケージを使って Grubbs test を行うことができる。
> install.packages("outliers") #パッケージ"outliers"のインストール
サーバーを選択し、outliers というパッケージをダウンロードする。成功すると
The downloaded binary packages are in
/var/folders/...省略.../downloaded_packages
というメッセージが出る。次に
> library(outliers)
でこのライブラリーを読み込む。> search() で現在自分が読み込んでいるパッケージの一覧を確認することができる。これが完了したら、上と同様に、1 - 9 と100を要素としてもつデータセット x を作って Grubbs' test を行ってみる。
> x=c(1,2,3,4,5,6,7,8,9,100)
> grubbs.test(x)
結果は
Grubbs test for one outlier
data: x
G = 2.8356, U = 0.0073, p-value = 3.964e-09
alternative hypothesis: highest value 100 is an outlier
となり、100 が外れ値であることがわかる。P値が上記の Smirnov-Grubbs test と同じなので、同じ検定をかけているものと思われる。なお、R を再起動したときは > library(outliers) からやらないと関数がみつからないようだ。
注意事項
データフレームの作成の際に、エクセルからのコピーをしたりすると、データが
> x=read.table(pipe("pbpaste"))
> x
V1
1 1
2 2
3 3
4 4
5 5
6 100
広告
コメント欄
各ページのコメント欄を復活させました。スパム対策のため、以下の禁止ワードが含まれるコメントは表示されないように設定しています。レイアウトなどは引き続き改善していきます。「管理人への質問」「フォーラム」へのバナーも引き続きご利用下さい。
禁止ワード: http, the, м (ロシア語のフォントです)
|
|
このページにコメント
これまでに投稿されたコメント
Date | Name | Comment |
---|
References
- スミルノフ・グラブス検定 http://aoki2.si.gunma-u.ac.jp/lecture/Grubbs/Grubbs.html
- Rで外れ値を計算する方法 Web.
- バイオスタティスティクス 外れ値 Web.