サイズが40〜50ポイントの小さなデータセットがあります。データが正規分布であると想定せずに、少なくとも90%の信頼度で外れ値を見つけたかったのです。私は箱ひげ図がそれを行うための良い方法であるかもしれないと思いました、しかし私はわかりません。
助けてくれてありがとう。
また、boxplot実装では、プロットを描画する以外に、外れ値を明示的に出力する実装を見つけることができませんでした。
サイズが40〜50ポイントの小さなデータセットがあります。データが正規分布であると想定せずに、少なくとも90%の信頼度で外れ値を見つけたかったのです。私は箱ひげ図がそれを行うための良い方法であるかもしれないと思いました、しかし私はわかりません。
助けてくれてありがとう。
また、boxplot実装では、プロットを描画する以外に、外れ値を明示的に出力する実装を見つけることができませんでした。
回答:
そのようなアルゴリズムは存在できないからです。何かを期待値の範囲外にあるものとして分類できるようにするには、想定される分布が必要です。
正規分布を想定している場合でも、データポイントを外れ値として宣言することは難しいビジネスです。一般に、多くの場合利用できない真の分布の適切な推定が必要なだけでなく、理論的に裏付けられた適切な決定の理由も必要です(つまり、被験者が実験セットアップを何らかの形で壊した)。このような判断は、通常、アルゴリズムで成文化することは不可能です。
Rは次のように外れ値を吐き出します
dat <- c(6,8.5,-12,1,rnorm(40),-1,10,0)
boxplot(dat)$out
これは箱ひげ図を描き、
[1] 6.0 8.5 -12.0 10.0
2*(1-pnorm(4*qnorm(.75)))
[1] 0.006976603
Set.seed(1); out = c();
for(i in 1:100)
x = rnorm(50)
y = boxplot(x, plot=F)
out[i] = length(y$out)>=1}
sum(out)/100
[1] 0.3
set.seed(1); out = c(); for(i in 1:100) {x = rnorm(500); y = boxplot(x, plot=F); out[i] = length(y$out)}; sum(out)/50000
与える0.00738
他の人が言ったように、あなたは問題を自信に関して不十分に述べました。別の投稿で参照した、Grubbs検定やDixon比検定などの異常値の統計検定があります。Dixonの検定は小さなサンプルの正規性の仮定に対してロバストですが、母集団の分布は正規であると仮定しています。ボックスプロットは、データの外れ値を見つけるための優れた非公式な方法です。通常、ひげは5パーセンタイルと95パーセンタイルに設定され、ひげを超えてプロットされたオブザベーションは通常、可能性のある異常値と見なされます。ただし、これには正式な統計検定は含まれません。