---
# System prepended metadata

title: 'Feature engineering,xgboostを見ての気づき'

---

# Feature engineering,xgboostを見ての気づき

[参考記事](https://www.kaggle.com/dlarionov/feature-engineering-xgboost)



## 気づき
### sns.boxplotで外れ値を見つけ除外（めちゃくちゃ大きい、）
### NaNが別の表現で表されているものを探す（負の値など）、そして代表値で埋めている
### 同じものをあらわしているが、表記が違うものを統合
### shop_nameをcityの大分類に分ける
### time関数で処理にかかった時間を見ている
* [](https://)****[](https://)



















## ラグを作る関数


```ex.py
def lag_feature(df, lags, col):
    tmp = df[['date_block_num','shop_id','item_id',col]]
    for i in lags:
        shifted = tmp.copy()
        shifted.columns = ['date_block_num','shop_id','item_id', col+'_lag_'+str(i)]
        shifted['date_block_num'] += i
        df = pd.merge(df, shifted, on=['date_block_num','shop_id','item_id'], how='left')
    return df
```






