2016-08-03 20 views
0

分位数と1.5 * IQRを使用してデータフレームの異常値を調べたいとします。私はboxplot関数を使い、結果のアウトライアをquantilesとiqrを使って計算されたoutlierと比較しました。boxplotを使用して異常値が検出されない

私は2つの方法の違いに気づいています。 boxplot法は、Q1-1.5 * IQR、Q3 + 1.5 * IQR計算よりも異常値が少ないことを検出します。私はboxplotのrangeを1.5に設定しようとしましたが、依然としてより少ないアウトライヤーを検出します。範囲は、設定する正しいboxplotオプションか、設定する必要がある別のオプションがありますか?

ご協力いただきまして誠にありがとうございます。

x <- c(-8.4849, -8.4848, -8.8485, -8.4848, -8.4848, -8.4848, -8.7879, -8.4848, 
     -8.4849, -8.6061, -8.3838, -8.2424, -8.4849, -8.3636, -8.2424, -8.7273) 
qnt = quantile(x, probs=c(.25, .75)) 
iqt = 1.5 * IQR(x) 
x[x < (qnt[1] - iqt)] 
[1] -8.8485 -8.7879 -8.6061 -8.7273 
x[x > (qnt[2] + iqt)] 
[1] -8.2424 -8.3636 -8.2424 

boxplot(x, range = 1.5)$out 
[1] -8.8485 -8.7879 -8.2424 -8.2424 -8.7273 
+0

の定義を参照してください'?boxplot.stats'ヘルプページの「ヒンジ」を参照してください。 'boxplot'からの値は+/-分位数ではなく、+/-ヒンジです。 – MrFlick

答えて

2

Rのquantile()関数とIQR()関数の両方に "type"引数があります。分位数は9種類(!)です。それらのほとんどは、もともとの不連続関数にいくらか滑らかな振る舞いを加えています。 quantile()文書で型の完全な定義を読むことができます。

boxplot()で使用されるquantileの正確な定義は、boxplot.stats()のドキュメントにあり、タイプ2のquantileに近いです。

ので、)答えは())(クォンように振る舞う箱ひげ図を作成するオプションはありませんということですが、(クォンタイルを作るためのオプションがあります((ほぼ)箱ひげ図のように振る舞う)

関連する問題