請問有什麼準則來決定相關係數大於 0.1 或小於 -0.1 的特徵?
2019/09/26 下午 09:50
機器學習共學討論版
William Mok
觀看數:47
回答數:2
收藏數:0
ml100-3
ml100-3-d30
Day_030_Feature_Selection.ipynb
# 篩選相關係數大於 0.1 或小於 -0.1 的特徵
high_list = list(corr[(corr['SalePrice']>0.1) | (corr['SalePrice']<-0.1)].index)
請問有什麼準則來決定相關係數大於 0.1 或小於 -0.1 的特徵?
是否可以用其他數字再嘗試
回答列表
-
2019/09/27 下午 01:16陳明佑 (Ming You Chen)贊同數:0不贊同數:0留言數:0
可以使用其他數字嘗試
基本上相關係數有兩個目的, 可以依照目的使用
1.與目標值相關係數高的選用 (課程中的說法) :
0.1只是一個自己決定的門檻, 你可以依照資料選擇適當的門檻
2. 檢查變數間的相關性 :
2個變數間如果相關性很高, (我們稱他們之間有很高共線性), 就只需要留下一個
這時候直接檢查相關性矩陣, 是最方便的做法,
以下是過濾相關性高的變數程式片段, 門檻可調, 提供參考
其中 df 是需要確認的特徵資料, 最後的 to_drop 是待刪特徵名稱
corr_matrix = df.corr().abs()
upper = corr_matrix.where(np.triu(np.ones(corr_matrix.shape), k=1).astype(np.bool))
to_drop = [col for col in upper.columns if any[col] > 0.9]
-
2019/09/27 下午 03:14張維元 (WeiYuan)贊同數:1不贊同數:0留言數:0
* 請問有什麼準則來決定相關係數大於 0.1 或小於 -0.1 的特徵?
=> 嘗試,從結果反推
* 是否可以用其他數字再嘗試
=> 可以