Logistic回歸分析之二元Logistic回歸

2021-01-10 SPSSAU

在研究X對於Y的影響時,如果Y為定量數據,那麼使用多元線性回歸分析(SPSSAU通用方法裡面的線性回歸);如果Y為定類數據,那麼使用Logistic回歸分析。

結合實際情況,可以將Logistic回歸分析分為3類,分別是二元Logistic回歸分析、多元有序Logistic回歸分析和多元無序Logistic回歸分析,如下圖。

Logistic回歸分析用於研究X對Y的影響,並且對X的數據類型沒有要求,X可以為定類數據,也可以為定量數據,但要求Y必須為定類數據,並且根據Y的選項數,使用相應的數據分析方法。

本次內容將針對二元logistic(logit)回歸進行說明,後續兩篇文章將分別講解有序logistic(logit)和多分類logistic(logit)回歸。

1、二元logistic分析思路說明

在進行二元Logistic回歸分析時,通常會涉及3個步驟,分別是數據處理、卡方分析和影響關係研究,如下圖。

1.1 第一步為數據處理

例如,在研究相關因素對樣本將來是否願意購買理財產品的影響情況時,性別,專業等均為影響因素,而且明顯的,性別和專業屬於定類數據,因此需要進行虛擬啞變量設置,可使用【數據處理->生成變量】完成。

除此之外,二元logistic回歸要求因變量只能為2項,而且數字一定是0和1,數字1表示YES,願意,購買,患病等,數字0表示no,不願意,不購買,不患病等。如果不是這樣,那麼就需要針對因變量Y進行數據編碼,使用【數據處理->數據編碼】即可完成。

1.2 第二步為卡方分析或方差分析

此步不是必需的步驟,通過此步可以試探性了解每個影響因素X與Y之間的影響關係情況,研究影響關係前,首先需要自變量X與Y之間有著差異關係,才可能進一步有著影響關係,也或者說差異關係是一種基礎性關係,影響關係是更進一步的深層次關係。所以在進行二元logistic回歸分析前,可先對X做差異分析,篩選出與Y有著差異性的X。

如果X是定類數據,那麼就使用卡方分析去分析差異;如果說X是定量數據,那麼可使用方差分析去研究X和Y的差異性。

分析完成X與Y的差異關係之後,篩選出有差異的X,然後再放入模型中,進行二元logistic回歸;這樣做的目的有兩個,一是簡化模型,越簡單的模型越容易擬合且效果越好;二是做到心裡有數,提前了解到數據之間的大致關係情況。

1.3 第三步為影響關係分析,即二元Logistic回歸分析

在上一步確認了可能的影響因素之後,此步驟直接對題進行二元Logistic回歸分析。二元Logistic回歸分析時,首先需要看某個題是否呈現出顯著性(如果P值小於0.05,則說明呈現出0.05水平的顯著性;如果P值小於0.01,則說明呈現出0.01水平的顯著性),如果呈現出顯著性,那麼說明該題對Y有影響關係。具體是正向影響還是負向影響需要結合對應的回歸係數值進行說明,如果回歸係數值大於0,則說明是正向影響;反之則說明是負向影響。

除此之外,二元Logistic回歸分析會涉及一個術語——對數比(SPSSAU中稱其為OR值)。對數比是一個倍數概念指標,該值等於回歸係數的指數次方,也稱exp(b)值。例如,研究相關因素對樣本『是否購買理財產品』的影響,性別因素呈現出顯著性,並且性別以女性為對照項,其對數比(OR值)為1.34,這說明男性樣本購買理財產品的可能性是女性樣本的1.34倍。

二元Logistic回歸分析模型的擬合情況或模型效果的判斷會涉及3個指標,分別是Hosmer和Lemeshow檢驗、R2值和模型預測準確率表格。Hosmer和Lemeshow檢驗用於檢驗事實數據情況與模型擬合結果是否保持一致,如果在進行Hosmer和Lemeshow檢驗時P值大於0.05,那麼說明事實數據情況與模型擬合結果保持一致,即說明模型擬合情況良好。

R2用於表示模型擬合程度,此值與多元線性回歸分析的R2值意義基本一致,此值的取值範圍為0~1,值越大意味著相關因素對Y的解釋力度越高。SPSSAU提供3個R方值指標,分別是McFadden R 方、Cox & Snell R 方和Nagelkerke R 方。

除此之外,SPSSAU還會輸出模型預測準確率表格,用於分析模型的預測水平情況。比如有多大比例將本身為願意購買理財產品的樣本誤判斷為不願意購買理財產品的樣本。

2、如何使用SPSSAU進行二元logistic操作

在進行二元logistic回歸分析時,共分為三個步驟,第1步是數據處理。第二步是進行卡方或者方差分析試控X對於Y的差異,找出有差異關係的X,用於進一步的二元logistic回歸分析。

2.1 數據處理

如果X是定類數據,比如性別或專業。那麼就需要首先對它們做虛擬啞變量處理,使用SPSSAU【數據處理】--【生成變量】。操作如下圖:

因變量Y只能包括數字0和1,如果因變量的原始數據不是這樣,那麼就需要數據編碼,設置成0和1,使用SPSSAU數據處理->數據編碼功能,操作如下圖:

2.2 卡方分析或方差分析

本例子中想研究性別,專業,年齡,月生活費共4項對於『是否願意理財』的影響。性別,專業這兩項為定類數據,所以可使用卡方分析它們分別與『是否願意理財』的差異關係。而年齡和月生活費可看成定量數據,可使用方差分析(或非參數檢驗)分析它們分別與『是否願意理財』的差異關係情況。

由於例子裡面僅4個X,本身就較少,因此模型本身並不複雜,因此直接忽略此步驟即可,直接進行二元logistic回歸分析。

2.3 二元logistic回歸分析

SPSSAU進行二元logistic回歸分兩步,分別是在進階方法裡面找到二元logit,第二是拖拽分析項到右我們就是右側框後開始分析,如下所示:

性別和專業均為定類數據,所以進行了虛擬啞變量設置。

而且性別分為男和女,以女作為參照項,因此框中僅放入『男』即可;

專業分為理工類,文科類,藝術類和,體育類;以體育類作為參照項,因此框中會少放體育類,放入另外3項即理工類,文科類和藝術類即可。

虛擬啞變量在進行影響關係研究時,一定需要有1個參照項,至於具體是哪一項,由研究者自行決定即可,無固定要求,一般是第1個或者最後1個,或者研究者希望設置作為參考項的。

完成後,SPSSAU會得到一系列的表格和智能分析,包括模型基本匯總表格,模型似然比檢驗表格,模型參數擬合表格,模型預測準確率表格,Hosmer-Lemeshow擬合度檢驗等。如下:

二元logit回歸分析基本匯總

二元logit回歸模型似然比檢驗結果

二元logit回歸結果分析

二元logit回歸預測準確率表格

Hosmer-Lemeshow擬合度檢驗

3、二元logistic相關問題

在使用SPSSSAU進行二元logistic回歸時,可能會出現一些問題,比如提示奇異矩陣,質量異常,Y值只能為0或1等,接下來一一說明。

第1點:出現奇異矩陣或質量異常

如果做二元logistic提示奇異矩陣,通常有兩個原因,一是虛擬啞變量設置後,本應該少放1項作為參考項但是並沒有,而是把所有的啞變量項都放入框中,這會導致絕對的共線性問題即會出現奇異矩陣矩陣。二是X之間有著太強的共線性(可使用通用方法的線性回歸查看下VIF值),此時也可能導致模型無法擬合等。先找出原因,然後把有問題的項移出模型中即可。

同時,如果自變量X的分布極其不均勻,SPSSAU建議可先對類別進行組合,可使用數據處理裡面的數據編碼完成。

第2點:Y值只能為0或1

二元logistic回歸研究X對Y的影響,Y為兩個類別,比如是否願意,是否喜歡,是否患病等,數字一定有且僅為2個,分別是0和1。如果不是這樣就會出現此類提示,可使用SPSSAU頻數分析進行檢查,並且使用數據處理->數據編碼功能進行處理成0和1。

第3點:OR值的意義

OR值=exp(b)值,即回歸係數的指數次方,該值在醫學研究裡面使用較多,實際意義是X增加1個單位時,Y的增加幅度。如果僅僅是研究影響關係,該值意義較小。

第4點: wald值或z值

z 值=回歸係數/標準誤,該值為中間過程值無意義,只需要看p 值即可。有的軟體會提供wald值(但不提供z 值,該值也無實際意義),wald值= z 值的平方。

第5點: McFadden R 方、Cox & Snell R 方和Nagelkerke R 方相關問題?

Logit回歸時會提供此3個R 方值(分別是McFadden R 方、Cox & Snell R 方和Nagelkerke R 方),此3個R 方均為偽R 方值,其值越大越好,但其無法非常有效的表達模型的擬合程度,意義相對交小,而且多數情況此3個指標值均會特別小,研究人員不用過分關注於此3個指標值。一般報告其中任意一個R方值指標即可。

相關焦點

  • Logistic回歸—多重共線性
    (P<0.05)納入多因素logistic回歸分析。顯然這樣做存在很多不足,下面學習幾篇英文文獻的statistical analysis,一方面了解多重共線性分析,另一方面學習可借鑑之處。IBM Support,作者擬採用Backwards方法擬合二元logistic回歸,此過程是否有評價預測變量共線性的機制以及進行擬合前移除共線性,是否存在類似線性回歸中容忍度這樣的標準來控制共線性?
  • 一文掌握多分類logistic回歸
    Logistic回歸分析(logit回歸)一般可分為3類,分別是二元Logistic回歸分析、多分類Logistic回歸分析和有序Logistic回歸分析。logistic回歸分析類型如下所示。· 如果Y有兩個選項,如願意和不願意、是和否,那麼應該使用二元Logistic回歸分析(SPSSAU【進階方法->二元logit】);· 如果Y有多個選項,並且各個選項之間可以對比大小,例如,1代表「不願意」,2代表「無所謂」,3代表「願意」,這3個選項具有對比意義,數值越高,代表樣本的願意程度越高,那麼應該使用多元有序Logistic回歸分析(SPSSAU【進階方法
  • Logistic 回歸101
    Logistc 回歸    今天,我們首先聊一聊最簡單的分類問題——二分類問題。二分類問題並不是要看看誰比較「二」, 純粹只是把數據分為兩類。    既然我們上個系列詳細地聊了聊線性回歸模型,我們首先來聊一聊最重要的線性二分類器之一—— logistic 回歸模型。
  • Logistic回歸—初步了解10個問題
    依據因變量類型(水平數量),又可分為二分類logistic回歸模型和多分類logistic回歸模型;二分類logistic回歸也稱二元logistic回歸、二項logistic回歸。
  • 一文讀懂條件Logistic回歸
    病歷對照研究或者傾向得分匹配研究(一種將研究數據處理成『隨機對照實驗數據』的方法)中常使用條件Logistic回歸進行分析。其與普通的二元logistic回歸區別在於,多出配對ID,即將配對組納入考慮範疇。
  • 統計·logistic回歸
    儘管此分析不需要因變量和自變量線性相關,但它要求自變量與對數比值線性相關。自變量間不存在多重共線性。即自變量彼此之間的相關度不應過高。logistic回歸的類型因變量:一定是分類變量二分類:比如某種疾病患病與否,治療結果是有效還是無效等。據研究設計的類型分為:非條件logistic回歸:也稱為logistic回歸。
  • SPSS統計分析案例:多項logistic回歸分析
    小兵博客幾年前分享的二項logistic回歸分析案例非常受歡迎,在實際應用中,可能還會碰到因變量是多個分類的情況,並且不包含排序信息。比如視力分為輕度、中度、重度三個水平,此時如果想考察影響視力評價的指標,常用的二項logistic回歸已經無法勝任。幸好,SPSS軟體為我們提供了多項logistic回歸。
  • 零基礎的同學如何用Stata做logistic回歸?
    同學們在做統計研究時,時常聽到身邊的朋友會提及一個詞:logistic回歸。聽的次數久了,同學們多半會思考:什麼是logistic回歸?如何在Stata中做logistic回歸呢?logistic回歸:指的是一種廣義的線性回歸,在一定程度上和多重線性回歸分析有著相似的地方。例如:模型的形式基本上相同,都有待求參數。兩者的關係是:logistic回歸分類模型的預測函數是通過線性回歸模型的預測值的結果進一步接近真實標記的對數機率!從而能夠使線性回歸的預測值和分類任務的真實標記兩者關聯在一起!
  • 一文詳述:觀察性研究中的logistic回歸分析思路
    本文內容來自《中華流行病學雜誌》2019年第40卷第8期,作者為馮國雙教授,原題目為《觀察性研究中的logistic回歸分析思路》。將這篇文章分享給醫咖會的夥伴們,希望大家能從領域大咖的見解中有所收穫,指導醫學研究之路。
  • 快速數據分析教程:無序多分類Logistic回歸
    如果是二元Logistic回歸,默認以數字0作為參考項(通常用數字0表示不願意,不喜歡,不會等)如果是多分類logistic回歸,SPSSAU默認以數字最小的一項作為參考項。如果想更換參考項,可在【數據處理->數據編碼】裡進行設置,把參考項的數值設為最小的數值即可。
  • R語言實現logistic回歸
    引言:前面我們已經掌握了logistic回歸的知識點,今天就來看看如何用R語言實現logistic回歸。今天用到的數據來源於機器學習倉庫,基於患者的一些信息以判定該患者是否患有心臟病(heart disease, hd),連結如下:http://archive.ics.uci.edu/ml/datasets/Heart+Disease1.
  • Logistic和Softmax回歸實戰(附代碼)
    類似於logistic回歸,softmax也是從得到的各個概率概率值中選擇最大的一個概率類別。和logistic回歸一樣,我們需要對所屬類別有一個較高的概率輸出,而對於其他類別的概率輸出則較低,同樣,我們通過損失函數來進行求取權重參數。
  • Logistic回歸分析-分類因變量最常用且首先考慮的分析方法
    一、重要概念一)基本表達式 當因變量為分類變量時,最常用且首先考慮的回歸分析方法應為logistics回歸,也稱為logit回歸,因logistic回歸模型表達式為,由表達式可知logit P與變量間存在線性關係,P/(1-P)稱為發生比(odds)即觀測事件發生的概率與未發生的概率的比值。
  • 【理論+案例實戰】Python數據分析之邏輯回歸(logistic regression)
    -item)))    return ax = numpy.arange(-10, 10, 0.1)y = sigmoid(x)plt.plot(x,y)plt.yticks([0.0, 0.5, 1.0])plt.axhline(y=0.5, ls='dotted', color='k')plt.show()
  • 利用R語言進行logistic回歸分析 | 30 天學會R DAY 26
    第26 天 利用R語言進行logistic回歸分析Logistic回歸是醫學研究甚至是很多社會學研究常見的一種回歸方法,它主要針對結局變量為二分類或者多分類的數據
  • 有序Logistic回歸實例分析(Ordinal Regression)
    如果研究X對於Y的影響,Y為定量數據則可以使用線性回歸分析。如果Y是定類數據,此時則需要使用Logit(logistic)回歸分析。Logit回歸共分為三種,分別是二元Logit(Logistic)回歸、多分類Logit(Logistic)回歸,有序Logit(Logistic)回歸(也稱Oridinal回歸),此三個方法的區別在於因變量Y的數據類型。
  • 從頭開始:用Python實現帶隨機梯度下降的Logistic回歸
    本文由機器之心編輯,「機器之心」專注生產人工智慧專業性內容,適合開發者和從業者閱讀參考。點擊右上角即刻關注。logistic 回歸是一種著名的二元分類問題的線性分類算法。它容易實現、易於理解,並在各類問題上有不錯的效果,即使該方法的原假設與數據有違背時。在本教程中,你將了解如何在 Python 中實現隨機梯度下降的 logistic 回歸算法。
  • 乾貨 | 對數線性模型之 Logistic 回歸、SoftMax 回歸和最大熵模型
    首先以概率的方式解釋了logistic回歸為什麼使用sigmoid函數和對數損失,然後將二分類擴展到多分類,導出sigmoid函數的高維形式softmax函數對應softmax回歸,最後最大熵模型可以看作是softmax回歸的離散型版本,logistic回歸和softmax回歸處理數值型分類問題,最大熵模型對應處理離散型分類問題。
  • 多元有序logistic回歸 - CSDN
    如果研究X對於Y的影響,Y為定量數據則可以使用線性回歸分析。如果Y是定類數據,此時則需要使用Logit(logistic)回歸分析。Logit回歸共分為三種,分別是二元Logit(Logistic)回歸、多分類Logit(Logistic)回歸,有序Logit(Logistic)回歸(也稱Oridinal回歸),此三個方法的區別在於因變量Y的數據類型。
  • Logistic邏輯回歸原理及實現
    我們用一條直線對這些點進行擬合,該線陳偉最佳擬合直線,這個擬合過程成為回歸。利用logistic回歸進行分類的主要思想是根據現有數據對分類邊界線建立回歸公式,依次進行分類。邏輯回歸的一般流程1.收集數據:採用任何方法收集數據2.準備數據:由於需要進行距離計算,因此需要數據類型為數值型,另外結構化的數據格式則最佳3.分析數據:採用任一方法對數據進行分析