1

試行 (X) と時間 (Y) を含む Excel ファイル (csv として保存) からの大量のデータがあります。カイ二乗検定コードを使用して、試行内の単一の外れ値を取り除くコードがあることを知っています。ただし、ファイル内の他のデータはそのままにして、データセット内に外れ値がある列全体を取り出したいと考えています。これを可能にするコードを見つける/思いつくのに苦労しています。何か提案はありますか?!

4

1 に答える 1

11

@user603 への返信を考えると、1 つの観測でもその変数に外れ値がある場合は、データセットからX 変数全体を削除したいと思うでしょう。これは R で行うのは簡単です。好みの戦略を使用して外れ値を特定し、それを変数に割り当てます。

outs = c(...)
data = data[,-outs]

または、これらの変数をモデル式に含めずに、data.frame をそのままにしておくこともできます。


別の言い方をすれば、私はこれは非常に悪い考えだと思います。そして、これがあなたがすべきことであるとあなたに信じさせる何らかの混乱があるに違いないと私は思います。いくつかのことを説明しましょう:

  1. 通常、共変量に外れ値があると考えるのは意味がありません。通常、外れ値は応答変数にあると考えます。その場合、1 つの可能性は、を削除することです(つまり、data = data[-outs,])。
  2. 外れ値がある場合、観測を削除することは、一般的に考えられる最悪の選択肢です。Tukey の bisquare など の堅牢な損失関数を使用する方がはるかに優れています。
于 2012-08-03T20:20:46.683 に答える