R_回歸模型實例一


工作和生活中存在大量的具有相關性的事件,當找到不同變量之間的關系,我們就會用到回歸分析。回歸分析(Regression Analysis):是用來確定2個或2個以上變量間關系的一種統計分析方法。

在回歸分析中,變量有2類:因變量 和 自變量。

  • 因變量:通常是指實際問題中所關心的指標,用Y表示。
  • 自變量:是影響因變量取值的一個變量,用X表示,如果有多個自變量則表示為X1, X2, …, Xn。

回歸分析研究的主要步驟:

  1. 確定因變量Y 與 自變量X1, X2, …, Xn 之間的定量關系表達式,即回歸方程。
  2. 對回歸方程的置信度檢查。
  3. 判斷自變量Xn(n=1,2,…,m)對因變量的影響。
  4. 利用回歸方程進行預測。

假設X和Y的關系是線性,可以用公式表式為:Y = a + b * X + c

  • Y,為因變量
  • X,為自變量
  • a,為截距(Intercept)
  • b,為自變量系數
  • a+b*X, 表示Y隨X的變化而線性變化的部分
  • c, 為殘差或隨機誤差,是其他一切不確定因素影響的總和,其值不可觀測。假定c是符合均值為0方差為σ^2的正態分布 ,記作c~N(0,σ^2)

對於上面的公式,稱函數f(X) = a + b * X 為一元線性回歸函數,a為回歸常數,b為回歸系數,統稱回歸參數。X 為回歸自變量或回歸因子,Y 為回歸因變量或響應變量。

實例 


 牙膏銷售的實例:數據結構及示例化如下  

  •  

分析: 對於大多數顧客來說,在購買同類牙膏時,更多的會關心不同品牌之間的價格差,而不是它們的價格本身。因此,在研究各個因素對銷售量的影響時,用價格差代替公司銷售價格和其他廠家平均價格更為合適。

在計算過程中並不一定要知道Y和X是否有線性相關的關系。如果不存相關關系,那么回歸方程就沒有任何意義了,如果Y和X是有相關關系的,即Y會隨着X的變化而線性變化。所以,我們需要用假設檢驗的方法,來驗證相關性的有效性。

通常會采用三種顯著性檢驗的方法:

  • T檢驗法:T檢驗是檢驗模型某個自變量Xi對於Y的顯著性,通常用P-value判斷顯著性,小於0.01更小時說明這個自變量Xi與Y相關關系顯著
  • F檢驗法:F檢驗用於對所有的自變量X在整體上看對於Y的線性顯著性,也是用P-value判斷顯著性,小於0.01更小時說明整體上自變量與Y相關關系顯著。
  • R^2(R平方)相關系統檢驗法:用來判斷回歸方程的擬合程度,R^2的取值在0,1之間,越接近1說明擬合程度越好

回歸模型擬合數據


 當兩個變量之間存在非常強烈的相互依賴關系的時候,我們就可以說兩個變量之間的存在高度相關性。若兩組的值一起增大,我們稱之為正相關,若一組的值增大時,另一組的值減小,我們稱之為負相關

  

  在使用回歸模型擬合數據之前,我們先來觀察自變量與因變量之間是如何相關的,我們求出除周期這一列外,其它各列的相關系數矩陣

 

 觀察發現sales銷售量列的相關系數絕對值越大,相關性越強。注:R中cor函數來計算相關性也是有局限的,它不能計算非線性模型

 

 基本模型


   利用散點圖觀察銷售量與價格差和廣告費用的關系  

library(ggplot2) mytable <- read.csv("price.csv") gplot(mytable,aes(x=mytable$DifPrice,y=mytable$sales))+geom_point()+labs(x="價格差",y="銷售量")+geom_smooth(se=F)+theme_bw() ggplot(mytable,aes(x=mytable$price,y=mytable$sales))+geom_point()+labs(x="價格",y="銷售量")+geom_smooth(se=F)+theme_bw() ggplot(mytable,aes(x=mytable$Invest,y=mytable$sales))+geom_point()+labs(x="廣告費",y="銷售量")+geom_smooth(se=F)+theme_bw()

 

    

 

如上圖可以發現隨着價格差(x1)的增加,銷售量(y)有比較明顯的線型增長趨勢;隨着廣告費用的增加,銷售量有向上彎曲增加的趨勢;

 模型求解


 

 

  • Residuals(殘差):列出了殘差的最小值點,1/4分位點,中位數點,3/4分位點,最大值點。
  • Coefficients(系數)表示參數估計的計算結果。Residual standard error:表示殘差的標准差,自由度為n-2
    • Estimate(估計):參數估計列。Intercept行表示常數參數a的估計值 
    • Std. Error:為參數的標准差,sd(a), sd(b)
    • t value:為t值,為T檢驗的值
    • Pr(>|t|) :表示P-value值,用於T檢驗判定,匹配顯著性標記
    • 顯著性標記:***為非常顯著,**為高度顯著, **為顯著,·為不太顯著,沒有記號為不顯著。
  • Multiple R-squared:為相關系數R^2的檢驗,越接近1則越顯著
  • Adjusted R-squared:為相關系數的修正系數,解決多元回歸自變量越多,判定系數R^2越大的問題。
  • F-statistic:表示F統計量,自由度為(1,n-2)
  • p-value:用於F檢驗判定,匹配顯著性標記。  

模型改進


  從如上的散點圖可以看出,隨着廣告投入增加,銷售量有向上彎曲增加的趨勢。這里我們將廣告投入的自變量換為二階項來。則將銷售量模型改為:

  

   用lm函數擬合以上模型特征:

   此時,我們發現,模型殘差的標准差Residual standard error有所下降,相關系數的平方Multiple R-squared有所上升,這說明模型修正的是合理的。但同時也出現了一個問題,就是對於β2的P-值>0.05。

  在做進一步的修正,考慮X1和X2交互作用,及模型為:

 

 

  模型通過T檢驗和F檢驗,並且Residual standard error減少,Multiple R-squared增加。因此,最終模型選為:

 

標准化


 

 

 

 

 

參考



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM