楊 弘 田 晶 王 可 張 青 韓清華△ 張巖波,3△
【提 要】 目的 針對混合型缺失數(shù)據(jù),使用幾種填補方法在缺失填補中的應用并評價填補效果。方法 結合實際數(shù)據(jù),模擬出不同缺失比例(10%、20%、30%、50%),采用MissForest、因子分析(FAMD)、K-最近鄰填補法(KNN)和基于鏈式方程多重插補(MICE)四種方法進行填補;采用錯分類比例(PFC)、正則化均方根誤差(NRMSE)和回歸系數(shù)估計值比較填補效果。結果 FAMD與MissForest相比,對分類變量填補表現(xiàn)優(yōu)越。缺失比例是10%時,F(xiàn)AMD與MissForest表現(xiàn)優(yōu)于KNN和MICE;缺失比例是20%時FAMD明顯優(yōu)于其它三種方法,但是MissForest表現(xiàn)亦可;缺失比例是30%時,四種模型表現(xiàn)明顯下降,處理效果均不太理想;缺失比例是50%時,雖然FAMD仍有兩個變量符合優(yōu)良標準,但對某些變量估計誤差較大,其它三種方法填補均失效。結論 FAMD填補方法總體表現(xiàn)較好,面對混合型缺失數(shù)據(jù)時可以考慮優(yōu)先選用。
數(shù)據(jù)缺失在很多醫(yī)學研究中是一個棘手的問題,在實際研究中,臨床指標沒有完全檢測或有遺漏,缺失不可避免[1]。缺失會影響統(tǒng)計估計值的性質(zhì),如平均值、方差或百分比,導致估計效果降低和結論錯誤[2]。此外,許多傳統(tǒng)的分析方法都依賴于完整數(shù)據(jù)集,即不允許有缺失值。因此,缺失數(shù)據(jù)的填補往往是數(shù)據(jù)分析中不可避免的一步。隨著人們對缺失數(shù)據(jù)的深入研究,很多新的高效測量方法在缺失填補領域得到廣泛發(fā)展,不僅可以處理變量數(shù)量可能超過觀測值的高維多元數(shù)據(jù),而且可以處理同時存在連續(xù)變量和分類變量的混合型數(shù)據(jù)(mixed-type data)[3]。本文針對基于臨床診療數(shù)據(jù)中常見的混合型數(shù)據(jù),在隨機缺失(MAR)假設下采用MissForest、因子分析(factorial analysis for mixed data,FAMD)、K-最近鄰填補法(K nearest neighbors imputation,KNN)和基于參數(shù)調(diào)整的鏈式方程多重插補(multivariate imputation by chained equations,MICE)對完整心衰電子病歷數(shù)據(jù)進行缺失模擬并進行效果評價,為混合型缺失數(shù)據(jù)的填補應用提供依據(jù)。
對缺失值進行填補要盡量讓填補值接近真實值,以避免對經(jīng)填補后的數(shù)據(jù)集分析時與原始數(shù)據(jù)集分析結果產(chǎn)生偏差。因此,本文選用以下四種在研究中表現(xiàn)較好的針對混合型缺失數(shù)據(jù)填補方法應用于本研究。
1.MissForest 填補
缺失森林算法是基于隨機森林的一種迭代填補算法,2012年由Stekhoven 首次提出使用,通過對許多未修剪的分類樹或回歸樹進行平均,構成了一個多重填補方法[3]。其主要思想是假設一個數(shù)據(jù)X=(X1,X2,…,Xp) 是n×p維矩陣,僅使用數(shù)據(jù)集觀察部分訓練隨機森林直接預測缺失值,該方法克服了傳統(tǒng)隨機森林要求響應變量必須是完整的這一缺點。本文中對MissForest參數(shù)設定為:ntree=500,mtry=3。
缺失森林填補過程如下:
(1)使用均值填補對數(shù)據(jù)X中缺失值進行初始預測;
(2)將變量XS,s=1,…,p依據(jù)缺失比例從小到大進行排序,對沒有缺失的樣本進行訓練,并使用第一次擬合的隨機森林進行填補;
(3)將訓練好的隨機森林應用于缺失部分數(shù)據(jù),對缺失值進行預測得到一個填補矩陣;
(4)重復以上過程,直到滿足停止標準,即新填補的數(shù)據(jù)矩陣與前一個矩陣之差首次增加時。
2.FMAD填補
因子分析(factorial analysis for mixed data,FAMD)是Audigier等人于2014年提出的一種專門針對混合數(shù)據(jù)進行描述、總結和可視化的填補算法。其基于主成分分析法,它的目的是研究個體間的相似性與變量間的關系(主要是連續(xù)變量與分類變量),允許同時使用個體與變量間的關系來預測缺失值。FAMD的原則是平衡分析中連續(xù)變量和分類變量的影響,F(xiàn)AMD的原理是將分類變量轉(zhuǎn)化為虛擬變量,并與連續(xù)變量連接起來。對每個變量進行加權,并同時考慮到不同類型的變量以平衡每個變量的影響,使各種類型的變量對主成分的構建都有同等貢獻[4]。
FAMD填補過程如下:
(1)數(shù)據(jù)初始化:使用平均值(連續(xù)變量)和比例(分類變量)進行輸入。計算標準偏差和列邊距,從而計算連接矩陣的權重(連續(xù)變量和虛擬變量的指標矩陣)。
(2)迭代直至收斂:(a)對完成執(zhí)行PCA加權數(shù)據(jù)矩陣進行參數(shù)估計。(b)用S維數(shù)擬合值對缺失數(shù)據(jù)填補。(c)更新連續(xù)變量的均值、標準差和分類變量的列邊距。
3. KNN填補
本文中使用Troyanskaya等在2001年提出的KNNimpute算法,通過尋找離觀測值最近的K個變量,并對這K個變量取加權平均,得到填補缺失的值變量Xj。因此,權重取決于變量Xj的距離[5],本文中距離選擇為歐氏距離。為了比較不同類型的變量,我們將數(shù)據(jù)中分類變量編碼為{0,1}。由于選取不同K填補效果差異較大,我們通過試驗最終確定K=5。
4. MICE填補
MICE多重填補是基于聯(lián)合建模(joint modeling,JM)和鏈式方程(fully conditional specification,FCS)[6]。其基本原理是假設完整數(shù)據(jù)X是從含m個變量的多變量分布P(Y|θ)中隨機抽取的觀測值,通過觀測數(shù)據(jù)的Gibbs迭代抽樣建立關于缺失變量θ的后驗分布(填補方程),然后對每個缺失值多次填補,最終綜合多個填補數(shù)據(jù)集做出最終的參數(shù)估計[6]。本文我們對MICE進行5次填補,對連續(xù)變量使用均值回歸,分類變量使用邏輯回歸。
1. 模擬思路
本文結合實際數(shù)據(jù),模擬含有4個變量(Y,X1,X2,X3)的混合型數(shù)據(jù)集。X1和X3為連續(xù)變量,X2為二分類變量;結局變量Y(二分類)由X1,X2,X3共同定義。將X2作為輔助變量設定數(shù)據(jù)的缺失機制為隨機缺失模式(MAR)。具體模擬過程如下。
X2依據(jù)有無高血壓史設定比例為P(X2=1)=0.6;
2. 模擬完整數(shù)據(jù)集與模型構建
完整數(shù)據(jù)集均由Rstudio模擬獲得,設定觀察數(shù)為1000?;谕暾麛?shù)據(jù)集分別模擬缺失比例10%、20%、30%和50%的隨機缺失模式(MAR)數(shù)據(jù)集,在同一缺失數(shù)據(jù)上分別采用FAMD、MissForest、KNN和MICE法進行填補,將得到的完整數(shù)據(jù)集與原始完整數(shù)據(jù)集進行比較,重復100次。
3. 評價指標
本文中采用兩種指標來綜合評價填補方法。對分類變量和連續(xù)性變量的模型評價分別采用錯分類比例(proportion of falsely classified,PFC)和正則化均方根誤差(normalized root mean squared error,NRMSE)[3]:
其中Xtrue是完整數(shù)據(jù)集矩陣,Ximp是填補后完整數(shù)據(jù)集矩陣。上述兩個指標范圍均為(0,1),越接近0模型表現(xiàn)越好,越接近1則越差。
4. 模擬結果
由圖1我們可以看出,四種方法隨著缺失比例增大,對連續(xù)變量和分類變量填補誤差也逐漸增大。從NRMSE來看,缺失比例在10%~30%時,F(xiàn)AMD與MissForest填補誤差相差不大,兩種方法均優(yōu)于KNN和MICE;從PFC指標看,缺失比例為10%時FAMD的填補誤差最小,相比其它三種方法優(yōu)勢明顯。20%~50%缺失比例中,F(xiàn)AMD略優(yōu)于另外三種方法。綜合分析結果,F(xiàn)AMD對混合型數(shù)據(jù)的填補效果最好,MICE填補效果最差。
圖1 不同缺失比例(10,20,30,50%)下四種方法(FAMD,MissForest,KNN,MICE)的NRMSE(上)和PFC(下)分布圖
1. 資料來源
在酶解時間、酶添加量和料液比均為上述試驗中的最佳條件下,試驗考察了酶解溫度對辣椒堿、辣椒二氫堿及辣椒紅色素含量的影響,試驗結果見圖3中A。
本研究資料節(jié)選自山西醫(yī)科大學附屬第一醫(yī)院于2017年8月至2018年8月入院診斷為慢性心力衰竭的726名患者的部分電子病歷資料為完整數(shù)據(jù)。根據(jù)左心射血分數(shù)的不同可分為射血分數(shù)降低的心衰(HFeEF)和射血分數(shù)保留的心衰(HFpEF),不同類型的心衰治療方式有所區(qū)別。經(jīng)共線性診斷,數(shù)據(jù)中各變量方差膨脹因子(VIF)均小于2,可以認為共線性對本研究影響不大?;厩闆r見表1。
表1 完整數(shù)據(jù)各變量基本情況
2. 分析方法及評價標準
本研究采用前一種方式,對完整數(shù)據(jù)集構造不同缺失比例(726×8個數(shù)據(jù)點中缺失10%,20%,30%,50%)的隨機缺失數(shù)據(jù),使用四種方法分別進行填補,每種試驗模擬10次。最后用填補后的數(shù)據(jù)與原始完整數(shù)據(jù)進行比較,依據(jù)評價指標來評價各填補方法效果。對于臨床電子病歷數(shù)據(jù)集,由于數(shù)據(jù)缺失的主要原因取決于數(shù)據(jù)收集中患者相關信息的可用性,缺失機制可視為隨機缺失模式(MAR)[7]。數(shù)據(jù)分析均采用Rstudio 1.1.4,使用“missForest”、“missMDA”,“VIM”和“MICE”包進行填補。
為了評價填補數(shù)據(jù)的有效性[7],我們以射血分數(shù)為因變量,其他變量為自變量建立二元logistic回歸對數(shù)據(jù)進行統(tǒng)計分析,對原始數(shù)據(jù)進行建模,模型及各變量均有統(tǒng)計學意義。隨后使用填補后的數(shù)據(jù)建模,通過對比各變量回歸系數(shù)(β)及相對誤差(θ=(β2-β1)/β1×100%)來評價填補后數(shù)據(jù)的有效性。
評價等級分別為:優(yōu)(|θ|≤10%)、良(10%<|θ|≤20%)、中(20%<|θ|≤50%)和差(|θ|>50%)。評價標準為計算等級順位累加構成比(優(yōu)+良),若構成比相同則參考相對誤差的大??;若“差”則為填補失效。
1. 四種方法的NRMSE和PFC
NRMSE和PFC比較結果分別如圖2、圖3。單純比較NRMSE,我們可以看到MissForest與FAMD在4種缺失比例下差異均無統(tǒng)計學意義,說明對連續(xù)變量填補效果表現(xiàn)無幾,二者表現(xiàn)優(yōu)良。但是MICE表現(xiàn)較差,NRMSE比前兩者高將近10%。KNN表現(xiàn)居于中間。在分類誤差PFC上,F(xiàn)AMD表現(xiàn)最優(yōu);MissForest與KNN分類效果相差不大,MICE分類誤差最大。
圖2 不同缺失比例下四種填補模型的NRMSE
*:NRMSE為10次試驗結果平均值;采用Wilcoxon配對t檢驗,F(xiàn)AMD(淺灰)、KNN(深灰)和MICE(白色)分別與MissForest(黑色)組進行比較;‘*’P<0.05,‘**’P<0.01,‘***’P<0.001
圖3 不同缺失比例下四種填補模型的PFC
*:PFC為10次試驗結果平均值;采用Wilcoxon配對t檢驗,F(xiàn)AMD(淺灰)、KNN(深灰)和MICE(白色)分別與MissForest(黑色)組進行比較;‘*’P<0.05,‘**’P<0.01,‘***’P<0.001
2. 不同缺失比例下變量的回歸系數(shù)
建立二元logistic回歸,缺失率是10%,在8個變量中,MissForest填補后回歸系數(shù)符合優(yōu)和良的標準分別為 3,3;FAMD填補后符合的為4,2;KNN填補后符合的為3,2;MICE符合的為0,4。四種方法中MICE相對誤差與另外三種的相比較大,說明其填補后數(shù)據(jù)與真實數(shù)據(jù)相差較大。詳見表2。
當缺失率是20%時,MissForest填補后符合回歸系數(shù)的優(yōu)良標準分別為2,1;FAMD分別為3和2;KNN分別為3,1;MICE分別為0,3。四種方法中除MissForest外,另外三種的填補符合優(yōu)良的計數(shù)與10%缺失率時的變化較小,說明MissForest隨著數(shù)據(jù)缺失的增加其填補效果不穩(wěn)定,與沈琳等人的結論一致[8]。詳見表3。
表2 10%缺失數(shù)據(jù)下不同處理方法的回歸系數(shù)及相對誤差
表3 20%缺失數(shù)據(jù)下不同處理方法的回歸系數(shù)及相對誤差
當缺失率為30%時,MissForest填補后符合回歸系數(shù)的優(yōu)良標準分別為1,1;FAMD分別為2,1;KNN分別為1,1;MICE分別為1,0,相比缺失比例為20%時總體模型表現(xiàn)均較差。詳見表4。
表4 30%缺失數(shù)據(jù)下不同處理方法的回歸系數(shù)及相對誤差
當缺失率是50%時,MissForest、KNN和MICE回歸系數(shù)符合優(yōu)良標準的均為0;但FAMD符合優(yōu)良標準的分別為1,1。除FAMD外,另外三種填補方法回歸系數(shù)的相對誤差有一多半變量都超過50%,總體而言填補效果均不太理想,可以認為處理失敗。詳見表5。
表5 50%缺失數(shù)據(jù)下不同處理方法的回歸系數(shù)及相對誤差
混合型數(shù)據(jù)是臨床電子病歷系統(tǒng)中最常見的數(shù)據(jù)類型。對于缺失數(shù)據(jù)有兩種方法被普遍使用[9]:一種是刪除對應缺失的所有變量或刪除缺失對應的該患者所有數(shù)據(jù);另一種是采用均值替代、臨近值替代或連續(xù)分布情況下的EM算法等。這兩種方法中前者會使數(shù)據(jù)信息丟失,后者無法進行混合性數(shù)據(jù)缺失值的填補,在做分析時產(chǎn)生偏差[10]。此外,缺失值在數(shù)據(jù)分析中也有諸多的不確定性。
本文在10%、20%、30%、50%不同缺失率下比較了MissForest、FAMD、KNN和MICE四種方法對混合型數(shù)據(jù)的填補效果。結果提示,針對混合數(shù)據(jù),總體來說FAMD填補方法要優(yōu)于其他三種方法,MICE表現(xiàn)最差。FAMD在不同缺失率下對連續(xù)變量的填補誤差(NRMSE)與MissForest相差無幾,但比KNN和MICE要低。分類變量的錯分類誤差(FPC),在不同缺失率下,F(xiàn)AMD表現(xiàn)穩(wěn)定且在四種方法中表現(xiàn)最優(yōu)。在10%~30%缺失比例下,與MissForest算法比,在大多數(shù)情況下,F(xiàn)AMD算法對兩種類型的變量具有更好的擬合能力,這與Audigier等人研究結論一致[4]。而MissForest總體表現(xiàn)要比KNN和MICE算法更優(yōu),這與Stekhoven等人結論也一致[3]。在數(shù)據(jù)缺失率達到50%時,F(xiàn)AMD達到優(yōu)良標準分別為1、1,但是也有2個變量相對誤差超過50%;而其它三種方法填補效果均無效,說明當缺失比例過大時,任何填補方法都是無效的,這與Enders CK等人結論一致[11]。
本次研究的數(shù)據(jù)僅僅來源于心衰患者電子病歷部分變量的模擬缺失數(shù)據(jù),數(shù)據(jù)量大小、數(shù)據(jù)維度、變量類型、變量比例等數(shù)據(jù)結構固定未變,對不同數(shù)據(jù)結構情形下的不同填補方法有待進一步比較。
總之,F(xiàn)AMD在本文中總體表現(xiàn)穩(wěn)定,由于其可以很好的處理分類與連續(xù)變量之間關系,尤其是具有高度線性關系下表現(xiàn)亦優(yōu)秀[12],這種方法可以使研究人員從多維角度研究個體之間的相似性和變量間的關系,而且調(diào)用 ” missMDA” R包操作簡便無需進行復雜的調(diào)參[13],在面對復雜的混合型數(shù)據(jù)缺失填補時,不妨是一種可以優(yōu)先考慮的方法。