這次筆記的內容是多重線性回歸的SPSS操作及解讀。 在線性回歸中,殘差是一個非常重要的概念,它是估計值與觀測值之差,表示因變量中除了分析的自變量外其他所有未進入模型的因素引起的變異,即不能由分析自變量估計的部分,在圖形上表示觀測值到擬合線的距離(注意不是垂直于擬合線的距離)。 適用條件 (1)線性趨勢。因變量與自變量存在線性關系,一般通過散點圖(簡單線性相關)或散點圖矩陣(多重線性回歸)來做出簡單的判斷。此外,殘差分析也可以考察線性趨勢,偏殘差圖是更為專業(yè)的判斷方法。如明顯不成線性關系,應進行變量變換修正或改用其他分析。 (2)獨立性。因變量各觀測間相互獨立,即任意兩個觀測的殘差的協(xié)方差為0。可用Durbin-Watson檢驗是否存在自相關。 (3)正態(tài)性。對自變量的任一個線性組合,因變量均服從正態(tài)分布。此處正態(tài)分布意為對某個自變量取多個相同的值,對應的多個因變量觀測值呈正態(tài)分布。但在實際獲得的樣本中,某一個自變量的固定的取值往往只有有限幾個甚至只有1個,其對應的因變量隨機觀測值也只有幾個甚至1個,是沒有辦法直接進行考察的。在模型中轉換為考察殘差是否符合正態(tài)分布。 (4)方差齊性。同正態(tài)分布類似,模型需要利用殘差圖考察殘差是否滿足方差齊性。方差不齊可進行加權的最小二乘法。 (5)各自變量間不存在多重共線。存在多重共線可導致結果與客觀事實不符、估計方程不穩(wěn)定等諸多問題。逐步回歸可以限制有較強關系的自變量進入方程,如存在多重共線,可以剔除某個造成共線性的自變量,或合并自變量,也可改用領回歸、主成分回歸、偏最小二乘法回歸等。多重共線可以利用容差、方差膨脹因子、特征根、條件指數(shù)、方差比例、相關系數(shù)以及殘差圖等多種方法考察。 (6)因變量為連續(xù)變量,自變量不限。在實際操作中,遇到自變量為分類變量的時候,可用最優(yōu)尺度回歸(分類回歸)。 多元線性回歸建立模型并不難,但需要認證考察多元線性分析的條件,以及建立的模型是否能夠最優(yōu)的擬合數(shù)據(jù)。分析步驟: (1)適用條件考察及處理:線性趨勢、獨立、正態(tài)、方差齊、不存在多重共線等,同時要注意強影響點。 (2)建立回歸模型,并進行模型和偏回歸系數(shù)的假設檢驗。 (3)模型擬合優(yōu)劣考察:復相關系數(shù)R,決定系數(shù)R2,校正決定系數(shù)R2adj,殘差均方或剩余標準差、赤池信息準則AIC、Cp。 特別說明:納入那些變量進行分析是由研究者根據(jù)專業(yè)和經(jīng)驗結合統(tǒng)計結果決定,而不是單單根據(jù)統(tǒng)計結果來決定。當自變量較多需要進行篩選自變量時,不同的篩選方法、不同的納入剔除標準,也會得到完全不同的結果,入選的不一定是最好的,沒有納入的也未必沒有統(tǒng)計學意義,回歸是為了控制混雜因素分析影響因素,還是為了估計與預測,不同的回歸模型可能對某種用途是好的,對另外一種可能就不是最好的。本示例僅為演示SPSS操作。示例數(shù)據(jù)來自孫振球主編的《醫(yī)學統(tǒng)計學》第三版。收集了27名糖尿病人的血清總膽固醇(TC)、甘油三脂(TG)、空腹胰島素(RI)、糖化血紅蛋白(HbAc1。本文圖片中由于個人在軟件錄入時書寫錯誤寫成了HbAa1c)、空腹血糖(Glu)的測量值,試建立血糖與其他幾項指標關系的多重線性回歸方程。 SPSS操作步驟 (1)數(shù)據(jù)錄入 (2)線性趨勢考察:Graphs>>Chart Bulider 選擇散點圖/點圖(Scatter/Dot),雙擊散點圖矩陣(Scatterplot Matrix),將要分析的所有變量拖入橫坐標的Scatter Matrix框,OK (3)線性回歸:Analyze>>Regression>>Linear……
變量篩選方法(Method):Stepwise 變量篩選方法SPSS提供了強行進入法(Enter)、逐步回歸法(Stepwise)、剔除法(Remove)、向后移除法(Backward)以及向前選擇法(Forward)。利用區(qū)塊(Block)可以實現(xiàn)對不同的變量采用不同的篩選辦法,將采用同一篩選方法的變量放在一個區(qū)塊內即可。
Statistics…對話框:為更好的演示,本例選中所有復選框。
Plots…對話框:提供作圖選項。繪圖可以輔助確認正態(tài)性、線性、方差齊性假設,在探測離群值、非觀測值及強影響點時也非常有用。除了可以直接利用該對話框進行作圖,也可以先生成新的變量,然后利用圖形構建器來作圖。本例將ZRESID 選入Y,ZPRED選入X,構建散點圖進行方差齊性的檢驗;同時選中Histogram和Normal probability plot進行正態(tài)性檢驗;選中Produce all partial plots進行線性趨勢檢驗。
Save…對話框:生成新的變量。本例生成標準化預測值、非標準化殘差、標準化殘差用于線性和方差齊性的診斷,生成Cook距離、杠桿值用于檢測異常點。
Options…對話框:可選擇在逐步回歸中的納入和剔除標準,模型是否包含常數(shù)項,以及對缺失值的處理方法 (4)利用殘差考察因變量與自變量的線性關系:Graphs>>Chart Bulider 選擇散點圖/點圖(Scatter/Dot),雙擊簡單散點圖(Simple Scatter),將要HbAc1拖入橫坐標的X-Axis?框,將新生成的RES_1(非標準化殘差)拖入縱坐標的Y-Axis?框,OK。同樣,可實現(xiàn)TC對RES_1的散點圖。 (5)高杠桿點和強影響點的考察:對新生成的變量COOl_1(庫克距離)和LEV_1(杠桿值)進行降序排列??墒褂肈ata>>Sort Cases…,然后選擇要排序的變量進行降序排列;也可直接在要排序的列上單擊右鍵,選擇Sort Descending。也可以通過Data>>Select Cases…來直接尋找滿足條件的記錄。 結果與解讀 【1】線性趨勢考察:右圖是在左圖的基礎上添加了擬合線??梢钥闯?個變量與Glu基本成線性關系。 【2】描述統(tǒng)計量:顯示各變量的均值、標準差及例數(shù)。 【3】相關系數(shù):輸出各變量間的Pearson相關系數(shù)和統(tǒng)計檢驗結果。【2】和【3】同為“統(tǒng)計量…“中“描述“的輸出結果。 如果各自間的相關系數(shù)過大,提示有多重共線的可能。 【4】模型納入和剔除的變量:本例采用的是Stepwise,共建立過兩個回歸模型,納入2各變量(HbAc1和TC),默認納入標準P≤0.5,剔除標準≤0.1。 【5】模型概要:默認輸出模型的一些擬合優(yōu)度評價指標信息:復相關系數(shù)R,決定系數(shù)R2,校正決定系數(shù)R2adj以及剩余標準差(Std. Error of the Estimate),這些統(tǒng)計量及ANOVA檢驗表由統(tǒng)計量對話框中的“模型擬合”輸出;同時本例在統(tǒng)計量對話框中還選擇了R改變量、Durbin-Watson檢驗,在該表格中一并輸出了這兩個結果。 結果顯示:最終的模型復相關系數(shù)R=0.696,所有自變量于Glu之間的回歸關系比較密切;R2=0.484,Glu的總變異中,最終模型中2個自變量可以解釋的變異占48.4%;與只納入HbAc相比,校正決定系數(shù)R2adj在增大,剩余標準差減小,說明擬合效果越來越好。納入新的變量后,R2的改變也有統(tǒng)計學意義。DW=1.589,查DW分布表,界值在1.240-1.556,DW=1.589>1.556,不存在相關性。Durbin-Watson取值0-4,DW=2表示自變量間不存在自相關(即相互獨立),0<DW<2表示正相關,2<DW<4表示負相關。當然統(tǒng)計上給出的DW分布表是一個由自變量個數(shù)和樣本量確定的范圍,根據(jù)0<DW<下界值則存在自相關,上界值<DW<4表示殘差間相互獨立,DW在上下界值之間則不能確定,可參考https://en.m./wiki/Durbin–Watson_statistic. 【6】方差分析:輸出回歸模型檢驗結果,該表格與上一個表格(Model Summary)中默認輸出的衡量模型擬合優(yōu)劣的幾個系數(shù)都是Statistics…對話框中Descriptives的輸出結果。表明最終回歸模型F=11.271,P<0.01,至少有一個自變量的回歸系數(shù)不為0,回歸模型有統(tǒng)計學意義。 【7】系數(shù):輸出模型的偏回歸系數(shù)的估計值,包括非標準系數(shù),標準化系數(shù)、以及各個偏回歸系數(shù)是否為0(是否與因變量存在線性相關)的t檢驗。由于本例還同時選擇了95%CI、部分相關和偏相關、共線性診斷,結果在該表格中一并輸出。 納入模型的各自變量偏回歸系數(shù)均不為0(PHbAc1=0.009<0.05;PTC=0.031<0.05),最終回歸模型為:Glu=1.310+0.732HbAc1+0.678TC。糖化血紅蛋白(HbAc1)每增加1%,血糖(Glu)平均升高0.732mmol/L;總膽固醇(TC)每增加1mmol/L,血糖(Glu)平均升高0.678mmol/L。 標準化回歸系數(shù)Beta去掉了不同自變量單位不同的影響,是利用標準化數(shù)據(jù)標計算而來,標準化數(shù)據(jù)=(原始數(shù)據(jù)-均值)/標準差。標準化回歸方程常數(shù)項為0,標準化回歸系數(shù)Beta=回歸系數(shù)β*(自變量X的標準差/因變量Y的標準差),在有統(tǒng)計學意義的前提下,標準化回歸系數(shù)的絕對值越大,對應自變量對因變量Y的影響越大。其意為固定其他自變量,自變量每改變1個標準差,因變量改變的標準差個數(shù)。標準化后的變量均值為0,標準差為1,常數(shù)項為0。該例Beta:HbAc1=0.456>0.369=TC,表明糖化血紅蛋白(HbAc1)對血糖(Glu)的影響大于總膽固醇(TC)對血糖(Glu)的影響。 在解釋自變量對回歸的貢獻時,只查看回歸系數(shù)往往是不夠的,相關關系也需要一并考慮。相關系數(shù)部分提供了0介相關、偏相關和部分相關系數(shù)。
共線性統(tǒng)計量:提供了容差(Tolerance)和方差膨脹因子(VIF),一般容差不小于0.1,VIF(容差的倒數(shù))不大于10可說明自變量不存在共線的情況,本例兩個自變量Tolerance=0.828,VIF=1.208,可以認為不存在共線的情況。 【8】排除的變量:將這些變量進一步納入現(xiàn)有模型中后的輸出結果。TG和RI納入最終的模型,偏回歸系數(shù)檢驗均無統(tǒng)計學意義。 【9】系數(shù)相關:輸出相關和協(xié)方差矩陣,是各變量間的相關系數(shù)和協(xié)方差,相關系數(shù)和相關系數(shù)表格【3】結果一致;協(xié)方差表示各個維度偏離其均值的程度,協(xié)方差矩陣用于衡量各個變量之間的緊密程度。 【10】共線性診斷:除了在系數(shù)表中輸出共線性診斷統(tǒng)計量Tolerance和VIF,共線性診斷還提供了特征根(Elgenvalue)、條件指數(shù)(Condition Index)及變異構成(Variance Proportions)。主成分特征根意義為該變量被引入后,可以解釋原始變量的個數(shù)。如果幾個主成分的特征根接近0,則表明自變量高度關聯(lián),數(shù)據(jù)值較小的改變會導致偏回歸系數(shù)發(fā)生較大的變化。條件指數(shù)是最大特征根與每個連續(xù)特征根比值的平方根,比值>15提示可能存在共線性的問題,>30則表明存在共線性。變異構成(方差比例)是回歸模型中各項(包括常數(shù)項)變異能被主成分解釋的比例,如某主成分對兩個或兩個以上的自變量貢獻均較大(如>0.5),則提示這幾個變量存在一定的共線性。 本例幾個指標結果提示最終進入模型的兩個自變量基本不存在共線性。 【11】個案診斷:Statistics…對話框中個案診斷(Casewise Diagnostics)的輸出結果,主要用來查看有無離群值。在個案診斷中可以有兩種輸出形式,一種是顯示所有記錄的編號、標準殘差、觀測值、期望值和殘差,另外一種只顯示離群值的基本信息,離群值默認以超過3個標準差的殘差為標準。本例無離群點,為顯示該功能及輸出樣式,將異常點改為超過2個標準差的殘差,結果顯示如下:第13條記錄滿足此條件被顯示出來。 【12】殘差統(tǒng)計量:Durbin-Watson檢驗輸出的預測值、殘差、標準預測值及標準殘差,該分析輸出的檢驗統(tǒng)計量DW值在模型概要表中顯示。馬氏距離、庫克距離及杠桿值得保存可輸出更多的殘差統(tǒng)計量。 【13】殘差正態(tài)分布考察:正方圖和P-P顯示殘差基本滿足正態(tài)分布。 【14】殘差分析:正常情況下,殘差服從均數(shù)為0,方差為δ2的正態(tài)分布,而標準化殘差服從均數(shù)為0,方差為1 的正態(tài)分布。①離群值考察:超過3個標準差的殘差為離群值,結果可以在殘差圖上直觀的顯示出來,當然在個案分析中也有輸出;②方差齊性考察:以標準化預測值對標準殘差作散點圖,此圖可在“繪圖”對話框中質結構建,也可以先在“保存”對話框中保存需要的兩個變量,然后用圖形構建器構建。也可以構建各個自變量對標準殘差作散點圖。如果標準化殘差隨機較均勻的散布在0橫線上下兩側,可認為方差基本相等,但如果標準殘差隨標準預測值增大出現(xiàn)擴散或收斂,則方差可能不齊。③線性關系考察:如果標準殘差呈現(xiàn)一定的曲線變化,則因變量與自變量可能不是線性關系或者殘差不獨立。 本例無離群值,但可能存在一高杠桿點;不論因變量預測值如何變化,標準化殘差隨機分布在殘差為0的橫線上下,不存在異常點,基本保持穩(wěn)定,可認為方差齊性;HbAc1和TC的殘差圖顯示,殘差基本隨機分布在0水平線的兩側,沒有明顯偏正或偏負的趨勢,說明HbAc1、TC和Glu呈線性關系。但是HbAc1的殘差散點圖分布不是十分理想,隱約有一個先下后上的趨勢。 【15】偏回歸圖考察強影響點和離群值。但個人覺得偏回歸圖也可以考察線性趨勢,普通散點圖雖然可以考察線性趨勢,但當存在混雜因素的印象時,可能會出現(xiàn)一些偏差。偏回歸圖是在校正了其他因素的影響后自變量與因變量的關系,能夠更準確的判斷自變量與因變量是否為線性。TC和HbAc1的偏殘差圖如下: 偏回歸圖添加擬合線、95%置信曲線及Y殘差=0后如下圖:TC和HbAc1的95%的置信曲線均跨過水平線,效應顯著,均大致呈線性,即兩個自變量在去除其他因素的影響后與Glu均呈直線關系,更有利于解釋變異。 需要說明的是,偏回歸圖(Partial Regression Plot)與偏殘差圖(Partial Residual Plot)是不同的,感興趣的可以閱讀后面的推文《偏回歸圖與偏殘差圖》。 【16】異常點考察:①離群點(因變量角度的異常值):一般以超過3個標準差的殘差為標準,【11】個案診斷表并未顯示,表明本例無離群值?!?1】表只是為了更好地演示將標準改為2個標準差而出現(xiàn)的表;②高杠桿點(自變量角度異常點):杠桿值一般<0.2,>0.5很可能是強杠桿點,0.2-0.5之間應引起懷疑。杠桿值降序排序顯示個案號為25的記錄LEV=0.52,可能為強杠桿點;③強影響點:庫克距離的值越大對回歸估計值影響越大,庫克距離>0.5,可能為強影響點,>1嚴重懷疑是強影響點。庫克距離值降序排序顯示個案號為25的記錄COO=2.03,可能為強影響點。 出現(xiàn)強影響點,應充分考慮該記錄產生的原因,是人為的錄入錯誤,還是該記錄跟其他記錄的納入標準明顯不一樣,如此,則需要刪除該記錄。如果都不是,或者嘗試增加樣本量,或者進行穩(wěn)健回歸,比如加權最小二乘法,可以先用普通最小二乘法做多重線性回歸,將殘差存為新變量,然后把這個殘差進行加權。 后記: (1)當然,研究者根據(jù)專業(yè)知識和經(jīng)驗,判定總膽固醇、甘油三酯、胰島素和糖化血紅蛋白都會對血糖有影響,可以將所有自變量直接納入模型而不是篩選自變量。此時變量篩選辦法為Enter,最終回歸方程為:Glu=5.943+0.142TC+0.351TG-0.271RI+0.638HbAc1?;貧w系數(shù)的解釋及其他結果可參照逐步回歸結果。 (2)多元線性回歸方程默認的變量納入和剔除標準分別為P<0.05和P<0.1,這個標準可以在Options…對話框中進行修改,本例樣本量不大,α值可以適當放寬,但要α入≤α出。如本例納入和剔除標準分別改為0.1和0.15,納入變量為TG、RI和HbAc1,最終回歸方程變?yōu)椋海篏lu=6.500+0.402TG-0.287RI+0.663HbAc1。 實際上這個結果與最優(yōu)子集篩選結果一致。最優(yōu)子集選擇在SPSS中可以通過自動建模(Automatic Linear modeling)實現(xiàn) Analyze>>Regression>> Automatic Linear modeling… Fields>>Target:Glu;Predictors:TC、TG、RI、HbAc1; Build Options>>Objectives:Creat astandard model; >>Basics:本例使用原始數(shù)據(jù)不進行處理,去掉自動準備數(shù)據(jù)的復選框; >>Model Selection:模型選擇方法:最優(yōu)子集; 其他項為默認選項 根據(jù)AICC標準選擇的結果如下: 當然,SPSS中默認進行對數(shù)據(jù)進行前處理,比如去掉離群值等,還有諸多其他一些模型擬合信息,本例不再做演示。JMP給出的所有可能模型結果如下。當模型納入TG、RI和HbAc1時,R2最大,剩余標準差最小,AIC和BIC值最小,擬合的模型最優(yōu),各變量系數(shù)與SPSS結果完全一致。 (3)關于交互作用的一些探討。 模型中納入了TG(甘油三酯)、RI(胰島素)以及HbAc1(糖化血紅蛋白),專業(yè)上考慮糖化血紅蛋白的作用大小可能與胰島素的取值有關,即兩者可能有交互作用,可以先構建兩者的乘積項,然后對其進行檢驗。 構建交互項:Transform>>Computer Variable… Target Variable:RHb(新構建的乘積項名稱) Numeric Expression:RI*HbAc1 回歸分析:Analyze>>Regression>>Linear…
變量篩選方法(Method):Enter 經(jīng)檢驗,模型F=13.862,P<0.01,模型有統(tǒng)計學意義,回歸方程Glu=-0.790+0.365TG+1.227RI+1.510HbAc1-0.179RHb。交互作用RHb顯著(P=0.006),我們可能會立即得出這樣一個結論:糖尿病患者體內胰島素對血糖的影響依賴于糖化血紅蛋白的含量。 但是我們會馬上發(fā)現(xiàn)這個模型也有問題!!是的,胰島素每增加1uU/ml,血糖升高1.227mmol/L,這顯然與實際不符,專業(yè)上胰島素與血糖呈負相關,所以在構建的含有交互項的多重線性回歸模型很可能存在多重共線的問題,統(tǒng)計學檢驗也證實了這一點(RI和交互項RHb的Tolerance均<0.1,VIF均>10)。 對此問題,經(jīng)管之家論壇有人給出了如下解決方案(https://bbs./thread-6379009-1-1.html):交互項的加入可能導致多重共線,多重共線性可能導致交互項結果估計不準確。在交互項中解決多重共線性的一個方法是:變量去中心化后再回歸,即將自變量減去他們的均值再回歸,主要結果如下: END |
|
來自: Memo_Cleon > 《待分類》