您好,登錄后才能下訂單哦!
這篇文章主要講解了“R語言線性回歸怎么使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“R語言線性回歸怎么使用”吧!
一、R安裝
R for Mac OS
RStudio
二、線性回歸基礎
eg1:
憑我們的學習經驗可知,物理成績確實與數學成績有一定的關系。但是除此之外,還存在其他影響物理成績的因素,例如,,是否喜歡物理,用再物理學習上的時間等
eg2:
商品銷售收入與廣告支出經費之間的關系,商品銷售收入與廣告支出經費有著密切的聯系。但是還有很多其他因素
eg3:
糧食產量與施肥量之間的關系。在一定范圍內,施肥量越大,糧食產量就越高,但是施肥量并不是影響糧食產量的唯一因素。
年齡 | 23 | 27 | 39 | 41 | 45 | 49 | 50 |
脂肪 | 9.5 | 17.8 | 21.2 | 25.9 | 27.5 | 26.3 | 28.2 |
年齡 | 53 | 54 | 56 | 57 | 58 | 60 | 61 |
脂肪 | 29.6 | 30.2 | 31.4 | 30.8 | 33.5 | 35.2 | 34.6 |
人體的脂肪含量與年齡之間的有怎樣的關系?
首先我們做散點圖。以x軸表示年齡,y軸表示脂肪。(自己做散點圖,)
從散點圖,可以看出,它們散布在從左下角到右上角的區域。對于兩個變量的這種相關關系,我們稱之為正相關。還有一些變量,例如汽車的重量和汽車每消耗lL汽油所行駛的平均路程,稱為負相關。
從散點圖可以看出,這些點大致分布在通過散點圖中心的一條直線附近。如果散點圖中心分布從整體上看大致在一條直線附近,我們就稱這兩個變量之間具有線性相關關系,這條直線稱為回歸直線(regression line).如果能夠求出這條回歸直線的方程(回歸方程),那么我們就比較清楚了解年齡與脂肪的關系。
最小二乘法
實際上,求回歸方程的關鍵是如何用數學的方法刻畫“從整體上看,各點到此直線的距離最小”
假設該直線為 y = bx + a
注意:
(x1,y1)(x2,y2)...(xi,yi).. 一個個點。到直線的距離,我們可以用點到直線的距離算出,但是這個比較復雜。
所以第一個簡化==> 點(xi,yi) ,垂直向上,或垂直向下到直線的距離 yi - y = yi - (bxi + a)
但是yi - y 有正負之分,所以我們第二次簡化,算平方
Q = (y1 - bx1 - a)^2 + (y2 - bx2 - a)^2 + .... + (yi - bxi - a)^2 + ...
只要計算出使得Q的最小的a和b,就能得到該回歸方程。
可以使用偏導數計算得出a,b
a = ...
b = ...
b是回歸直線的斜率,a是截距
相關關系的強弱
我們知道不是所有兩個變量的關系都是線性的,如何判斷是否能使用線性回歸呢?
統計中用相關系數r來衡量兩個變量之間的線性關系強弱。
r = ...
統計學認為 如果 r <- [-1,-0.75] 那么負相關很強, r<- [-0.75,-0.30] 負相關性一般, r<- [-0.25,0.25] 相關性弱,
r <- [0.75,1] 那么正相關很強, r<- [0.30,0.75] 正相關性一般,
三、RStudio測試
數據:
研究嬰兒生理發育issue,并收集了10名嬰兒在出生后一年內的月齡和體重數據。
年齡(月) | 01 | ??03 | 05 | 02 | 11 | 09 | 03 | 09 | 12 |
體重(kg) | 4.4 | 5.3 | 7.2 | 5.2 | 8.5 | 7.3 | 6.0 | 10.4 | 10.2? |
03 |
6.1 |
我們用c()函數以向量的形式輸入月齡和體重 > x_age=c(1,3,5,2,11,9,3,9,12,3) > y_weight=c(4.4,5.3,7.2,5.2,8.5,7.3,6.0,10.4,10.2,6.1) > mean(y_weight) => 計算平均數 [1] 7.06 > sd(y_weight) => 計算標準差 [1] 2.077498 > cor(x_age,y_weight) => 計算相關性 [1] 0.9075655 > plot(x_age,y_weight) => 畫散點圖 > cor_xy = lm(y_weight~x_age + 1) => 設置擬合曲線方程式 > plot(cor_xy) => 畫回歸直線 > coef(cor_xy) => 計算回歸直線的斜率和截距 (Intercept) x_age 4.3596206 0.4655827 > z = data.frmae(x_age=13) > predict(cor_xy,z) => 我們來預測13個月的嬰兒的體重
感謝各位的閱讀,以上就是“R語言線性回歸怎么使用”的內容了,經過本文的學習后,相信大家對R語言線性回歸怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。