spss線性回歸 回歸方程 - CSDN

2020-12-15 CSDN技術社區

我是一隻正在迭代的分析獅天天。

最近看了B站UP主好好玩量化的視頻《回答沈逸老師,新冠疫情下越民主死越多嗎?》,用到的分析方法就是線性回歸,決定猛學習一下,再來評判視頻裡的結論。

圖片來源:B站視頻截圖

提前預習

統計學

  • 定距、定序、定類

  • 線性回歸方程

  • 復相關與決定係數

  • 偏相關係數、標準化偏相關係數

  • 殘差

SPSS操作

01 線性回歸的應用場景

線性回歸,首先應用於定距變量之間,本質上是分析一個因變量和一組自變量之間的相關關係,既可以解釋,也可以做預測。

沈逸老師提出的,新冠疫情下越民主死越多嗎?就是一個用線性回歸解釋相關性的問題。

再舉幾個商業應用的簡單例子:

1、根據投資規模、員工數量,對生產規模進行預測;

2、探索潮牌店的收入,與人均收入水平、年輕人數量的關係;

3、價格、促銷、季節因素等對銷量的影響;

……

02 重要!線性回歸的適用條件

【案例】今天用到的是一個分析交通運輸需求的數據集。在這個案例中,需要預測的是因變量Y「每周乘客數量」,自變量分別是X1至X4。

國內的小夥伴,可以直接在bing國際版 or 搜狗英文裡,搜索第一個變量的名稱「Number of weekly riders」,就可以找到很多提供該數據集的網址,自行下載就好了。

【適用條件】

根據我總結的學SPSS的黃金三步法,區分場景-適用的統計學條件-操作及報告解讀

對於回歸分析,適用條件這一part特別重要,一定要拿小本本記下來!

1、最重要!自變量與因變量之間是線性關係,嚴格要求,如果不滿足,可以做非線性回歸,不要硬上;

2、樣本量要足夠,經驗值是希望分析的自變量數量的20倍。比如根據理論,有5個變量是必須進入模型的,還有6個是可以考慮的,即使最後用不上,希望分析的自變量數量也是11個,20倍就是最少220個樣本;案例是一個練習用的數據集,有4個自變量,但只有27個樣本量,湊合用;

3、因變量和自變量都是定距變量。有時候,定序自變量會作為定距變量處理,或者和定類變量一樣,變換為虛擬變量(啞變量)放入模型;

4、殘差的獨立性、正態性和方差齊性,殘差是估計值與真實測量值之間的差,所以要在構建模型後,才能計算殘差,再分析、調整;如果只是做相關關係的探索,不做預測,這一條可以放寬;

5、強影響點的診斷;

6、自變量的多重共線性問題,即自變量之間有較強的相關性,這條很常見,要根據理論框架和嚴重程度做取捨。

03  建模的流程

回歸分析的SPSS操作特別簡單,但相應的準備、診斷、調整流程比較複雜,我先按教科書上的標準流程分享,日後有機會多應用,再分享經驗。

3.1線性關係的考察

方法:每一個自變量與因變量的散點圖

案例數據裡有四個自變量X1-X4,與因變量的關係基本都滿足線性關係,存在的問題主要是個別數據離擬合曲線有點遠,可能是強影響點,建模時會進一步考察。

X1

X2

X3

X4

3.2因變量的分布觀察

前面提到的適用條件裡,有一條是因變量殘差的正態性,在建模前,也應該先看一下因變量的分布,經驗告訴我們,非常偏態的數據,殘差的正態性也不會太好。

3.3自變量的篩選

下面就進入建模流程了,把哪些自變量放到模型裡呢?

在問卷調研中,數據的採集都是有「預謀」的,也就是說從在設計問卷時,就需要考慮要做哪種分析,哪些問題會作為自變量放進模型裡。

「預謀」的根據首先是已有模型,模型就是分析問題的方法,很多國外的調研公司之所以牛,模型的積累和應用是重要原因。年輕人,有機會還是要進大公司,多見識些模型。

其次,可以根據理論的操作化探索新模型,比如社會學裡講財富、權力和聲望是社會分層的三個關鍵維度,在問卷調研裡,就可以轉換為收入、職業、教育程度、社會影響力等指標建模。所以,數據分析人員也要加強理論學習,並參考一些學術模型。

最後,才是根據自變量的重要性,做篩選和調整。

SPSS裡有自動篩選的功能,即「步進」的方法(或者稱逐步回歸法),把變量放入模型,但有30%+概率不是最優方程,而且也面臨如何解釋模型的問題,所以教程上還是建議手工選擇自變量。

沒有找到這個案例的背景說明,我個人理解,應該是預測公共運輸的乘客數量(如果不對,歡迎指教)

案例數據集裡放了4個自變量,來探索和因變量 Number of weekly riders的關係。

X1→Price per week

X2→Population of city

X3→Monthly income of riders

X4→Average parking rates per month

04  建模後的解讀、診斷和調整

根據殘差分析、強影響點、多重共線性的診斷和調整,才是建模的核心。下面就進入重頭戲的學習。

4.1模型的解讀

紅框裡的方法先用輸入法,將自變量和因變量都選進來即可

第一步,看決定係數。

R平方的意思是因變量的變異能夠通過回歸關係被自變量解釋的比例。

決定係數的大小決定了模型的好壞。如何判斷R平方的大小呢?很不幸,沒有統一的標準,而且各行業的差距很大,醫學上,99%都不夠,做股市分析20-30%就很牛了。

案例數據集的結果,R方達到94.5%,是個不錯的結果。

第二步,看模型的假設檢驗結果。

方差分析的H0假設是,所有X的偏相關係數都是0,這裡的結果是拒絕零假設,即至少一個係數不為0。

第三步,做自變量重要性的比較。

看下圖B值那一列,是方程裡各自變量的係數,稱為偏相關係數,即控制了其他自變量,與因變量的相關關係。因為有量綱的影響,接下來會用標準化後的偏相關係數beta,來衡量自變量的重要性。

在這個案例中,X1(Price per week)的Beta值最高,其次是X4(Average parking rates per month),最後是X3和X2。

看每一行後面的假設檢驗,X2和X3的顯著性值分別為0.456和0.432,>0.05,即接受H0,係數=0,不相關。所以,調整模型的時候可以考慮排除這兩個自變量。

結合實際場景的解讀,影響乘客數量最重要的因素是票價,負相關,票價越高,乘車人數越低。然後是替代方案的成本,即停車費,正相關,停車費越高,乘車人數越高。聽起來也比較合理。

4.2殘差分析

如果只是做相關關係的探索,不做預測,殘差檢驗可以放寬。反之,則需要嚴格的殘差檢驗。

第一步,獨立性。

在定義自變量、因變量的界面,統計選項,勾選Durbin-Watson檢驗。

Durbin-Watson檢驗值在0-4之間,經驗值在1-3之間滿足獨立性,超過這個區間就不太靠譜了。案例結果顯示,數值為1.438,滿足獨立性,符合建模需求。

第二步,正態性。

根據圖形來考察。圖形選項-勾選標準化的直方圖和P-P圖。

先看直方圖,形態比較符合,數值分布在3和-3之間。

再看P-P圖 ,如果滿足正態性,實測累計概率與預期累計概率應該一致,即散點應該分布在主對角線上。考慮到樣本量比較小,案例結果在可接受範圍,理想情況應該是貼合一些。

第三步,方差齊性

還在圖選項裡,畫一張X為標準化預測值,Y為標準化殘差的散點圖。

雙擊圖表,添加一條坐標為0的參考線。

教科書上給出了三張殘差散點圖的常見情況。

案例的數據基本符合標準圖,散點在0附近上下均勻分布,不超過正負3,也沒有明顯的分布規律。其中不超過正負3就是強影響點的考察。

書中的第二張圖屬於方差不齊,即隨著預測值越來越大,方差越來越大,需要做變量變換(超綱啦,以後慢慢學啊)

第三張圖,說明回歸方程裡缺少高次項,比如平方項。即本來是曲線方程,但現在做成了線性方程,所以隱藏的曲線關係就體現在殘差裡了(因為殘差是預測值和真實值之間的差)

4.3強影響點

在前面的殘差散點圖觀察中,提到超過正負3的點,就是非常可疑強影響點。可以在統計選項-個案診斷中設置,然後輸出案例號。

對強影響點的一般處理方法有幾種:

1、先檢查數據是否錄入錯誤;

2、如果有合理的理由,證明樣本沒有代表性,可以直接剔除不放入模型。樣本越大,刪除的影響越小。

3、把這個樣本的數據放入和拿出模型,看一下對模型的影響大不大,如果不大也就無所謂了。

4、用更穩健的回歸分析方法,降低強影響點的影響。(這條超綱啦,以後慢慢學啊)

4.4多重共線性

還是在統計選項裡,為了讓大家一步步理解,所以把殘差、強影響點和多重共線性分開講了,實戰中可同時在統計選項裡設置,然後一起看結果。

容差的含義,用案例的情況舉例,假設X1為因變量,X2-X4為自變量的回歸方程的決定係數為R1平方。容差=1-R12。那麼,容差越小,說明多重共線性越嚴重,所以經驗值要大於0.1。

VIF是容差的倒數,經驗值是<< span="">10。

接著看共線性診斷的表

特徵根(翻譯成了特徵值):原理是對模型的自變量和常數項提取主成分,如果前面的特徵根比較高,後面趨於0,則提示多重共線性比較嚴重。

條件指數(翻譯成了條件指標):如果多個指數值>30,提示有問題。

後面的方差比例,如果某個主成分解釋其他各項的比例較高,提示有問題。

綜合以上標準,本案例數據的多重共線性是比較嚴重的。

可以用逐步回歸(stepwisse,翻譯成步進)的方法自動篩選自變量,將解釋力較小的自變量排除在外。在這個案例中,會自動把X2-X4都排除了,只保留了X1。即只有票價的高低對乘客數量的多少有很大影響。

多重共線性的問題很普遍,在實際數據的診斷和和理論框架之間,應該更聽從理論的召喚,畢竟模型要可解釋。


最後,來回答沈逸老師的問題,新冠疫情下越民主死越多嗎?

根據UP好好玩量化的回歸模型,R平方太小了,只有0.182(雖然做成這樣已經很牛了),所以我覺得這個結論不能成立。

不過這位UP主找數據,做分析的思路還是很贊的,大家可以找來康康~

圖片來源:B站視頻截圖 

參考書

  • 張文彤《SPSS20.0統計分析高級教程第2版》

  • 李沛良 《社會研究的統計應用》

軟體版本 | SPSS 25.0

題圖 | Pexels

相關焦點

  • spss多元線性回歸模型專題及常見問題 - CSDN
    多元線性回歸,主要是研究一個因變量與多個自變量之間的相關關係,跟一元回歸原理差不多,區別在於影響因素(自變量)更多些而已,例如:一元線性回歸方程 為:    毫無疑問,多元線性回歸方程應該為:那麼,多元線性回歸方程矩陣形式為:
  • 的方法 線性回歸方程檢驗專題及常見問題 - CSDN
    回歸方程建立及回歸參數的區間估計,但是它們都是建立在假定因變量和自變量線性相關的基礎上。解:運用Excel對數據進行回歸分析,得到回歸方程和決定係數R平方;三種檢驗方法雖然各有側重,但在一元線性回歸方程的檢驗中,三種檢驗的作用是相同的,因此對於一元線性回歸方程而言,只要選擇一種方法進行檢驗即可。
  • spss 方法 線性回歸專題及常見問題 - CSDN
    以照護需求得分為因變量,以可能為影響失能老年人照護需求得分的因素為自變量,採用多元線性回歸篩選出影響失能老年人選擇照護服務需求的因素。本例納入的自變量有年齡、經濟來源、健康自評、失能程度、慢性病患病種類、慢性疼痛、跌倒經歷,賦值方式如表1:
  • 線性回歸假設檢驗 - CSDN
    , lrg3)get_lr_stats(x4_in, y4_in, lrg4)四個模型參數幾乎一樣( get_lr_stats 在Python_一元線性回歸及回歸顯著性中)但是並非全都是線性回歸>>> get_lr_stats(x1_in, y1_in, lrg1)一元線性回歸方程為: y=3.000090909090906 + 0.5000909090909094*x相關係數(R^2): 0.6665424595087752;回歸分析(SSR): 27.51000090909094
  • 多元線性回歸分析:納入多元回歸自變量的確定及求解多元回歸方程
    許栩原創專欄《從入門到高手:線性回歸分析詳解》第五章,多元線性回歸分析:如何求解多元線性回歸方程。在前面的章節中我講到,實際需求預測場景中,通常,影響需求的因素不止一個,對需求影響的因素可能多種多樣,也就是說自變量多種多樣,很少能用單一的變量(也即一元線性回歸分析)來做好需求預測。這時,我們需要用到多元線性回歸分析。回歸分析在需求預測的應用,也主要是多元線性回歸分析。
  • eviews 線性回歸模型 - CSDN
    分享經典書籍: A Modern Approach to Regression with R.pdf  連結: https://pan.baidu.com/s/14NJt7CrOpUUe2hYyrJn_rg  提取碼: 7fv6  多元線性回歸
  • 線性回歸分析詳解7:多元回歸方程的精度,R平方與調整後的R平方
    許栩原創專欄《從入門到高手:線性回歸分析詳解》第七章,回歸方程的精度,R平方與調整後的R平方。多元線性回歸分析,我們在求出多元線性回歸方程後,這個方程到底怎麼樣,能不能起到效果,需要對求出的回歸方程進行一系列評價和評估。這些評價和評估,首先要做的,是確認回歸方程的精度。本章,我將分如下三個小節講述回歸方程的精度,歡迎閱讀與探討。我的《線性回歸分析》專欄總目錄見下圖。
  • t值 線性回歸專題及常見問題 - CSDN
    線性回歸 用線性回歸找到最佳擬合直線回歸的目的是預測數值型數據,根據輸入寫出一個目標值的計算公式,這個公式就是回歸方程(regression equation),變量前的係數(比如一元一次方程)稱為回歸係數(regression weights)。
  • 線性回歸分析詳解10(完結篇):線性回歸分析預測的十大步驟
    許栩原創專欄《從入門到高手:線性回歸分析詳解》第10章,這是本專欄的最後一章,是專欄的完結篇:用線性回歸分析做預測,多元線性回歸分析預測的十大步驟。線性回歸分析專格欄總目錄請見上圖,前9章,我分別講述了回歸分析及與回分析相關的概念,一元、多元線性回歸分析的公式與計算方法,以及多重共線性、回歸方程的精度、顯著性驗證和置信區間等進行回歸分析的重要步驟及其計算方法。至此,以回歸分析進行需求預測的各項知識點及各項準備工作全部完成,我們可以正式的以回歸分析進行需求預測。
  • eviews線性回歸模型專題及常見問題 - CSDN
    分享經典書籍: A Modern Approach to Regression with R.pdf  連結: https://pan.baidu.com/s/14NJt7CrOpUUe2hYyrJn_rg  提取碼: 7fv6  多元線性回歸
  • SPSS方法|嶺回歸分析
    :嶺回歸分析是在構建多重線性回歸模型時, 對基於「最小二乘原理」推導出的估計回歸係數的計算公式作一下校正,使回歸係數更穩定。當自變量之間存在較強的多重共線性時,求得的多重線性回歸模型很不穩定; 尤其是某些自變量回歸係數的正負號與實際問題的專業背景不吻合時,嶺回歸分析可以很好地解決這一問題。
  • 回歸系列(四)|一個完整的線性回歸是怎樣做的
    作者:丁點helper 來源:丁點幫你前面的文章主要介紹了回歸的一些關鍵詞,比如回歸係數、樣本和總體回歸方程、預測值和殘差等,今天我們結合一個案例來看看如何做完整的回歸分析,準確而言,是多重線性回歸(Multiple Linear Regreesion)。
  • 線性回歸方程的顯著性驗證,總體驗證的F檢驗與個體驗證的t檢驗
    許栩原創專欄《從入門到高手:線性回歸分析詳解》第8章,顯著性驗證,總體驗證的F檢驗與個體驗證的t檢驗。上一章,我講述了回歸方程的精度,在回歸分析中,我們求出回歸方程後,除了確認回歸方程的精度外,我們要需要對回歸方程進行顯著性驗證,以確認回歸方程的有效性。本章,我同樣分如下三個小節對顯著性驗證進行講解,歡迎閱讀與探討。我的《線性回歸分析》專欄總目錄見下圖。1、什麼是顯著性驗證?
  • 基於R軟體實現多元線性回歸
    其基本思想是確定一個方程,給出一組預測變量(X)和一個響應變量(Y)之間的線性關係:式中β1-βn代表了預測變量X1-Xn的回歸係數(斜率),β0是線性方程的截距。回歸的目的是找到一組最優的模型參數(斜率和截距值的組合),使響應變量的觀測值和預測值之間的殘差平方和最小化。
  • 回歸系列(一)|怎樣正確地理解線性回歸
    作者:丁點helper 來源:丁點幫你線性回歸,可能是統計學上運用最廣泛的一類方法了,之所以說它是一類方法,是因為它包括了我們熟知的各種模型:簡單線性回歸、多重線性回歸、Logistic回歸等等。確實如此,線性回歸,尤其是一般線性模型(一個Y,多個X)使用起來沒什麼障礙,但大家是否完全理解清楚了所有應該掌握的內容(非數學計算)可能有待思考,這個系列的文章我們以「線性回歸」為主題,希望能讓大家對這個問題的認識能再全面一丁點。
  • 線性擬合與曲線擬合,直接在圖上添加擬合曲線、擬合方程、判別係數...
    1、什麼是線性擬合?線性擬合,顧名思義,針對兩組數據或多組數據,找出一條最佳擬合直線,常用於處理與自變量呈線性關係的因變量。線性擬合是數據處理的常用方法,擬合的目的是對呈現一定數值關係的因變量與自變量找出最佳擬合方程,一般用線性回歸來實現。
  • spss 非線性回歸 - CSDN
    主要採用層次回歸的方法進行數據分析,操作起來並不難。首先,對授權型領導行為、自我決定感進行中心化處理(即變量減去它的均值),分別構建二次項。其次,引入控制變量,構建基準模型,分別為Model1 與Model3,操作如下:分析—線性回歸—引入控制變量 再次,以任務績效為結果變量,依次引入授權型領導行為、授權型領導行為平方分別構建Model4與Model5,在這裡我們主要是驗證授權型領導行為對任務績效產生倒U型影響,主要是通過Model5來判斷,如果授權型領導行為平方對任務績效產生顯著負向影響,且相比Model4
  • Python數據分析|線性回歸
    Python數據分析學習筆記,今天分享下利用Python對業務進行數據預處理,並利用線性回歸進行數據預測。④先以我們後續需要用來做線性回歸的列「內容閱讀量」為標準,將不含該值的數據行去除:調用dropna函數,並執行info函數看數據情況。
  • 一文輕鬆看懂線性回歸分析的交互作用!
    如果想要研究兩個自變量如X1和X2的交互作用,通常的做法就是將兩個變量相乘,即X1*X2,然後把乘積項納入到回歸方程。操作起來很簡單,但交互項的納入對於回歸係數的解讀卻帶來了新的問題。以一個很經典的例子來說明。
  • r語言一元回歸模型專題及常見問題 - CSDN
    一元線性回歸介紹回歸分析(Regression Analysis)是用來確定2個或2個以上變量間關係的一種統計分析方法。如果回歸分析中,只包括一個自變量X和一個因變量Y時,且它們的關係是線性的,那麼這種回歸分析稱為一元線性回歸分析。回歸分析屬於統計學的基本模型,涉及統計學基礎,就會有一大堆的名詞和知識點需要介紹。