Impute node遺失值補值的方法
本期將針對 Impute node 的各種方法的使用建議再做詳細說明:
■ 母體的統計量補值方法:
平均數(Mean)為最常用來做連續變數的補值方法,然而,平均數適用於對稱的鐘型分布(常態分布),若資料極右偏或左偏分布則不適用,平均數易受極值影響,可考慮用分群平均數來取代整體平均數。如以所得為例,資料有極值時,以區域別及年齡層進行群集區隔,以各群的所得平均來進行補值,相對整體平均值更具有參考解釋性。
考量平均數易受極端值影響的特性,除了分群平均數的方法處理外,亦可選擇使用Median(中位數)、Mid-Range(最大最小值平均值) 、截頭去尾平均值(Mid-Minimum Spacing)等方法來進行補值。其中,最大最小值平均值法為(最大值+最小值)/2,截頭去尾平均值法則為去除兩端n%的觀測值後,再取用Mid-Range。
另外,眾數法(Count)則以變數類別水準出現頻率最高的來補值,眾數法適用於類別資料的遺失值補值。
■ 母體分布(Distribution):
依據母體真實資料分布的均數 μ 來進行補值。
■ 利用資料探勘模型進行補值:
較精準的補值方法為採用資料探勘模型的方法來進行補值,EM提供決策樹(Tree)的方法,將遺失值欄位設定為目標變數,進行值的預測。通常針對重要具有模型影響性的變數,建議採用此法。
■ 使用者自訂(Constant):
使用者亦可給予缺失值一個指定值,連續數值常設定為「0」、「99999」,類別數值則設為「N/A」。
■ 不處理(None):
分析者可以選擇忽略遺漏值,不進行處理,交由後續模型演算方法來處理。
迴歸分析與類神經演算方法,遇到觀測值中欄位有缺失時,會自動忽略不計,所以無形之中會損失很多重要資訊,因此,缺失值的處理在迴歸分析或類神經相對重要,補值的方法就可以依上述所說的各種統計、資料探勘等方法來處理缺失值問題。決策樹則有自動處理的能力,遺失值可以獨立一個分支、或歸在最多分支、或最有相關的分支裡。
Impute node遺失值補值的案例說明
接續上期分析流程:
(1) 準備群集分析資料集:SAMPSIO.HMEQ
(2) 進行遺失值檢視
(3) 進行遺失值處理
至Modify工具頁籤下選取Impute Node與資料節點HMEQ串連,並進行對應參數設定。
圖一:Impute node的參數列
Impute node 針對類別變數(Class Variables) 與連續變數(Interval Variables) 不同資料類型提供對應的補值方法,其中類別變數預設的補值方法為「Count」,連續變數則為「Mean」,分析者可以依據資料狀況調整預設值。
但若選擇預設方法補值時,會產生當任何一個連續變數發生遺失值狀況時,就用「平均數(Mean)」來處理,同樣的,任一類別變數發生值的缺漏時,則一律套用「眾數(Count)」。然而,各個變數有不同的資料狀況,建議應各自選取適當補值方法。因此,可點選參數列「Variables」進行使用者自訂。
圖二:各變數補值方法設定
勾選Variables視窗上方的「Statistics」選項,可以顯示各變數的遺失值比例Percent Missing,資料顯示除了目標變數「BAD」以及投入變數「LOAN」資料完整外,其餘欄位都有資料缺失的狀況,其中以「DEBTINC(負債所得比)」的資料遺漏最嚴重,缺失比率高達21%,然而細查之後會發現,資料缺漏的原因主為該比率值的分母--income為空值所造成,所得為空值顯示申請者不願意揭露其所得狀況,然而「DEBTINC(負債所得比)」屬重要變數,因此建議以精確補值方法--「Tree Impute Method」來處理。
各變數值缺漏狀況的補值處理:
● CLAGE(貸款往來期間-月)、DEBTINC(負債所得比)、YOJ(現職工作年數)--採用「Tree」補值法。
Dr.SAS建議重要的影響變數或社經變數可採用較精緻的「Tree」方法來補值,當選擇Tree補值法時,則需將要帶入Tree模型的變數進行挑選,如圖XX在欄位「Use Tree」將欲投入的變數設為「Yes」。本範例將「CLAGE」、「DEBTINC」、「JOB」、「LOAN」、「VALUE」、「YOJ」等變數設為Tree補值模型的投入變數,當欲進行「DEBTINC」欄位的缺漏值補值處理時,選擇Tree法會將「DEBTINC」設定為欲預測的目標變數,其他選擇變數則設為投入變數,將無遺漏的完整資料帶入,進行決策樹模型建置,最後將「DEBTINC」遺漏的觀測值餵入模型,得到的預測值即為補值結果。
● CLNO(交易筆數)--採用「Default」補值法。
CLNO欄位資料分布較呈常態分佈,因此可採用「平均數(Mean)」法,Impute node針對連續變數的補值處理預設方法即為「Mean」(如右圖),CLNO選擇的Default補值法即為採用系統參數的預設方法。
● DELINQ(逾期次數)--採用「Distribution」補值法。
DELINQ欄位資料分布則為一明顯的右偏分布,因此不適用「平均數(Mean)」法,可選擇真實資料分布的均數μ進行補值。
● DEROG(外部資料重大違約)、NINQ(近期信用查詢的次數) --採用「Constant」補值法。
此兩個變數皆為外部查詢資訊,造成遺缺值的主要可能為申請者沒有發生這些事件或行為,且資料絕大多數也屬於無發生行為者,所以建議直接補「0」。選擇「Constant」補值法時,需在「Default Constant Value」參數選項內,依據資料型態設定使用者指定的值。
● JOB、REASON--採用「Count」補值法。
JOB和REASON均屬類別變數,類別變數的遺漏值處理多採用眾數(Count)法來補值。
● VALUE--採用「NONE」補值法。
VALUE(房屋現值)為真實房屋價值的反應,邏輯上用任何統計的補值方法都不合理,且該變數遺漏值在1%左右,建議採用不處理(NONE)。
圖:參數設定列
(4) 點選「OK」,完成遺失值處理設定。
(5) 執行「RUN」,並檢視結果。
有缺漏值的變數,Impute node並不會直接將計算的值填補在原欄位,而會各自新增以IMP為首,加上原始變數名稱的新衍生欄位,如下圖三。同時,「Impute Summary」也會顯示各補值結果值與補值資料筆數。
圖三:Imputation Summary
Tags