外れ値
ここでは変数 age の構造を確認します。右側にはヒストグラムが表示されています。動画で年収(annual_inc)について見たときと同様に、プロットの右側に大きな空白が見えます。これは外れ値が存在する可能性を示唆します。これを確認するため、散布図を見ていきます。もし外れ値が見つかったら削除します。
複数の変数で外れ値が観測される場合は、2変量プロットを見るのも有効です。同じ観測に外れ値が集中している可能性があるためです。その場合、その観測に含まれる情報の一部が誤っている可能性が高く、削除する理由がさらに強くなります。
この演習はコースの一部です
R で学ぶクレジットリスク・モデリング
演習の手順
- 関数
plot()を使って変数age(loan_data$age)の散布図を作成し、2つ目の引数ylabで y 軸ラベルを"Age"に設定します。 - このデータで最も高齢の人物は122歳を超えています! 年齢122を閾値として which() を使い(
loan_data$age > 122で実行できます)、この外れ値のインデックスを取得して、オブジェクトindex_highageに代入します。 index_highageを使って高年齢の観測を除去し、新しいデータセットnew_dataを作成します。- 年齢を x 軸、年収を y 軸にした2変量の散布図を表示し、軸ラベルをそれぞれ
"Age"と"Annual Income"に変更します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Plot the age variable
# Save the outlier's index to index_highage
# Create data set new_data with outlier deleted
new_data <- loan_data[-___, ]
# Make bivariate scatterplot of age and annual income
plot(loan_data$age, loan_data$annual_inc, xlab = "___", ylab = "___")