歡迎來到數據清理(Data Cleaning)的世界!
你好!歡迎來到 Exam ATPA 學習旅程中最重要的章節之一。你可能聽過「垃圾進,垃圾出」(garbage in, garbage out)這句話。在預測分析中,模型的質素取決於你餵給它的數據。現實世界的數據往往很混亂——它們會有「洞」(缺失值)和奇怪的「驚喜」(離群值)。在本章中,我們將學習如何識別這些問題,更重要的是,如何修復它們,讓你的模型大放異彩!
第一部分:處理離群值(Outliers)
想像一下,你正在查看一群成人的身高數據。大多數人的身高都在 5 到 6 英尺之間。突然,你看到一個記錄顯示某人身高 12 英尺!這就是一個離群值(outlier)——一個與其餘觀測值明顯不同的數據點。
究竟什麼是離群值?
離群值是指在總體隨機樣本中,與其他數值距離異常遠的觀測值。離群值可能由以下原因造成:
1. 數據輸入錯誤:有人把「12」誤打成了「120」。
2. 測量誤差:傳感器出現故障。
3. 自然變異:有時候,極端數值是真實存在的(例如在平均薪酬研究中的億萬富翁收入)。
如何發現離群值
如果你無法單憑盯著試算表找出它們,不用擔心!我們有相應的工具:
• 盒鬚圖(Boxplots):這是你的好朋友。任何繪製在「鬚」之外的獨立點通常被視為離群值。
• 散點圖(Scatterplots):非常適合觀察某個點是否不符合兩個變數之間的關係。
• IQR 規則:從數學上講,如果一個點高於第三四分位數或低於第一四分位數超過 \(1.5 \times IQR\),通常被稱為離群值。
• Z-分數(Z-Scores):如果一個數據點的 Z-分數大於 3(或小於 -3),說明它離平均值非常遠,很可能是離群值。
我們該如何處理它們?
一旦發現離群值,你有三個主要選擇:
1. 保留它:如果你認為數據準確且代表了一種真實(儘管罕見)的現象。
2. 刪除它:如果你確定這是一個錯誤,或者它會對你的模型產生不相稱的偏差。
3. 轉換/封頂(Transform/Cap):這通常稱為溫莎化(Winsorization)。你用一個較不極端的數值(例如第 99 百分位數的值)來替換極端值。
快速回顧:離群值會扭曲你的平均值並放大變異數(variance)。在按下「刪除」鍵之前,請務必先進行調查!
關鍵總結:
離群值並不總是「壞」數據;它們只是「不同」的數據。你的工作是判斷它們是有用的信號還是擾人的雜訊。
第二部分:缺失數據——數據集中的「洞」
當觀測值中的某個變數沒有數值時,就會出現缺失數據。這是精算工作中常見的頭痛問題,可能是因為保單持有人沒有回答問卷問題,或者系統未能記錄交易。
為什麼缺失數據是一個問題?
大多數預測模型(如標準的 GLMs)無法處理缺失值。如果一行數據中有缺失值,軟體可能會直接丟棄整行數據,從而浪費了其他欄位中極具價值的資訊!
缺失的三種類型
要解決這個問題,我們首先需要了解數據為什麼會缺失:
1. 完全隨機缺失(MCAR):沒有任何規律。這就像有人不小心把咖啡灑在帳本的幾頁隨機頁面上。
2. 隨機缺失(MAR):缺失情況與其他「已觀測到的數據」有關。例如,男性回答體重問題的機率可能比女性低。
3. 非隨機缺失(MNAR):缺失情況與缺失值本身有關。例如,收入非常高的人可能拒絕在表格上報告其收入。
你知道嗎? MNAR 是最難處理的,因為數據缺失的原因「隱藏」在缺失數據本身之中!
處理缺失數據的策略
1. 刪除(「簡單」的方法)
• 列刪除(Listwise Deletion):如果任何值缺失,則刪除整行。這很簡單,但可能導致大量數據流失。
• 何時使用:僅在缺失數據量非常少且屬於 MCAR 時使用。
2. 插補(「填補」的方法)
插補(Imputation)是指用估計值填補漏洞。
• 均值/中位數/眾數插補:用該欄位的平均值填補漏洞。警告:這會減少數據的變異數,並可能導致模型過度自信!
• 預測插補:使用微型模型(如回歸分析)根據其他變數來預測缺失值應該是多少。
3. 「缺失指示符」(「精算」的方法)
與其猜測,你可以建立一個新的二元/指示變數(例如 \(Is\_Missing = 1\))。對於原始變數,你用一個常數(如 0)填補缺失位置。這讓模型能夠學習「數據缺失」這一事實本身是否為一個預測因子!
關鍵總結:
永遠不要忽視缺失數據。選擇「什麼都不做」實際上就是讓你的軟體刪除這些行,這可能會使你的結果產生偏差。
第三部分:常見陷阱與技巧
應避免的常見錯誤
• 不要盲目刪除:如果某個欄位中有 40% 的數據缺失,刪除這些行會摧毀你的數據集。考慮刪除該欄位而不是整行。
• 留意「隱藏」的缺失值:有時缺失數據不是空白單元格。它們可能被編碼為「999」、「未知」或「0」。請務必檢查你的摘要統計(summary statistics),看看是否有數值看起來很可疑。
• 不要插補目標變數:通常情況下,你不應該插補目標變數(你試圖預測的內容)。直接移除那些行即可。
一個簡單的類比
把清理數據想像成準備一頓飯。離群值就像是一顆比其他辣椒辣 100 倍的辣椒——如果你把它留在裡面,可能會毀了整道菜。缺失數據就像食譜中缺少的食材——你可以選擇放棄那道菜(刪除),替換成類似的東西(插補),或者意識到缺少食材是廚師忘了去購物的一種徵兆(指示變數)。
考試總結檢查清單
• 識別:使用圖表(盒鬚圖/散點圖)和統計數據(IQR/Z-分數)來找出離群值。
• 診斷:缺失數據屬於 MCAR、MAR 還是 MNAR?
• 處理:根據情況在刪除、插補或指示變數之間做出選擇。
• 記錄:在 ATPA 考試中,請務必解釋你為什麼選擇特定的清理方法。「為什麼」與「怎麼做」同樣重要!
繼續加油!你做得很好。掌握數據清理是成為頂級預測分析師的基礎。一旦你的數據乾淨了,那些「有趣」的模型構建工作就會變得容易得多!