How to Win a Data Science Competition (Week2-2 part1)
Kaggle 機械学習
Published: 2019-05-26

EDA examples

学習目標

  • Describe the major visualization tools
  • Generate hypotheses about data
  • Inspect the data and find golden features
  • Examine and analyze various plots and other data visualizations

Springleaf competition EDA I

データの形状を知る

x.shape

訓練データはターゲットのカラムが1つ多い(モデルを構築するときは削る)

何行か出力してみる

訓練データ、テストデータともに出力してみる

x.head

欠損値を調べる

各特徴、各行に対して調べる

例 (各行に対して)

train.isnull().sum(axis=1).head(15)

例 (各特徴に対して)

train.isnull().sum(axis=0).head(15)

データをクリーニングする

まずデータの種別を決めていく

  • 特徴ごとのユニークな値の数を調べる

feats_counts = train.nunique(dropna = False)
feats_counts.sort_values()[:10]
  • 一意の特徴を削除する

constant_features = [削除するカラム]
xxx.drop(constant_features,axis = 1,inplace=True)
  • 重複を削除する

欠損値を埋める

traintest.fillna('NaN', inplace=True)

ラベルエンコードする

train_enc[col] = train[col].factorize()[0]

訓練データ(生)、訓練データ(ラベルエンコード済み)で重複カラムを見つける

削除処理

traintest.drop(dup_cols.keys(), axis = 1,inplace=True)

処理に時間がかかった場合、dump しておくと便利

参考