缺值補None/補0 的差異?
你好 看完Day49及在處理期中的資料所產生的問題
想請問在處理資料前處理的過程中
選擇缺值 補None 及 補0的差異在哪 選則補None/0的特徵欄位 條件或是想法是如何(我知道是要以case by case的特徵討論 但有沒有一個參考的選擇方向)
謝謝
回答列表
-
2020/05/07 下午 07:00CUPOY贊同數:0不贊同數:0留言數:0
哈囉Timmy您好
目前已週知專家了解問題中,再煩請您稍候一下唷感謝。
-
2020/05/07 下午 07:39Jeffrey贊同數:0不贊同數:1留言數:4
1. 直接 drop 掉那些含有缺失值的 rows
2. 針對 numerical 特徵的缺失值,可以用以下方式取代:
•0,缺點是可能會混淆其他本來就是 0 的數值
•-999,用某個正常情況下不會出現的數值代替,但是選得不好可能會變成異常值,要特別對待
•Mean,平均數
•Median,中位數,跟平均數相比,不會被異常值干擾
•針對 categorical 特徵的缺失值,可以用以下方式取代:
•Mode,眾數,最常見的值
•改成 "Others" 之類的值
3. 更複雜一點的方式是,你可以把沒有缺失值的數據挑出來,用它們來訓練一個 regression 或 classification 模型,用這個模型來預測缺失值。
-
2020/05/09 下午 08:43張維元 (WeiYuan)贊同數:0不贊同數:0留言數:0
嗨, Timmy
缺值補None/補0 的差異?
=> 補值會根據你原有的資料來看,覺得初始比較偏向哪一種。None 或 0 應該是因為資料型態的差異,如果是文字型資料也可以補成 空字串。
如果這個回答對你有幫助請主動點選「有幫助」的按鈕,也可以追蹤我的GITHUB帳號。若還有問題的話,也歡迎繼續再追問或者把你理解的部分整理上來,我都會提供你 Review 和 Feedback 😃😃😃
-
2020/05/09 下午 08:45張維元 (WeiYuan)贊同數:0不贊同數:0留言數:1
另外補充一下關於缺失值得處理策略:
- 直接刪除含有缺失值的資料或欄位(根據移除的影響程度)
- 填補遺失值
- 人工填補 常數(0/-1)或通用值(unknown)
- 類似資料/全部資料的統計值(連續數值的話補平均,離散、類別數值的話補眾數)
- 利用統計方法進行補值(內差/回歸)
- 利用機器學習方法進行補值(預測)
在這裡,建議不要利用統計方法/機器學習進行補值,根據缺值的數量與分佈決定要用哪一種就好:)
贊同 1
如果這個回答對你有幫助請主動點選「有幫助」的按鈕,也可以追蹤我的GITHUB帳號。若還有問題的話,也歡迎繼續再追問或者把你理解的部分整理上來,我都會提供你 Review 和 Feedback 😃😃😃
-
2020/05/15 上午 02:40張維元 (WeiYuan)贊同數:0不贊同數:0留言數:0
「嗨 維元哥, 請問為什麼不建議呢 是因為在這裡的作業還不需要用到這麼複雜的方法嗎? 還是即使實戰在處理資料的時候也不推薦呢?」
=> 因為統計方法/機器學習本身就是一種預測,那這麼做就好像是拿「預測的結果」再進行預測。
如果這個回答對你有幫助請主動點選「有幫助」的按鈕,也可以追蹤我的GITHUB帳號。若還有問題的話,也歡迎繼續再追問或者把你理解的部分整理上來,我都會提供你 Review 和 Feedback 😃😃😃