1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで学ぶMachine Learning面接対策

Connected

演習

外れ値への対処

前の演習では、外れ値を可視化することがMachine Learningの面接で役立つと学びました。外れ値に対処するもう一つの便利な方法は、Zスコアを計算することです。これは平均からおよそ±3標準偏差を外れ値のしきい値として与えます。

この演習では、scipy.stats モジュールを使って stats.zscore() 関数でZスコアを計算し、mstats.winsorize() 関数でWinsorizingという手法により外れ値を置き換えます。

動画レッスンを思い出してください。IQRの1.5倍より上または下にある点は、外れ値の可能性があると疑うべきでした。本演習の最後のステップで使うその値は 2120 です。

必要なパッケージはすでにインポート済みで、loan_data の数値列とカテゴリ列はそれぞれ numeric_cols と categoric_cols として抽出・保存されています。

Machine learning pipeline

指示1 / 3

undefined XP
  • 1
    • 数値列について、絶対Zスコアが3未満の行だけを残すインデックスを作成し、それを使ってサブセットをインデックス指定・連結します。
  • 2
    • 'Monthly Debt' を上下5%でWinsorizeし、処理前後の平均・中央値・最大値を表示します。
  • 3
    • Monthly Debt のうち 2120 未満の値の中央値を求め、それで外れ値を置き換えます。