R語言多元線性回歸

2021-07-25 21:41:41 字數 1528 閱讀 7008

toothpaste<-data.frame(

x1=c(-0.05, 0.25,0.60,0, 0.25,0.20, 0.15,0.05,-0.15, 0.15,

0.20, 0.10,0.40,0.45,0.35,0.30, 0.50,0.50, 0.40,-0.05,

-0.05,-0.10,0.20,0.10,0.50,0.60,-0.05,0, 0.05, 0.55),

x2=c( 5.50,6.75,7.25,5.50,7.00,6.50,6.75,5.25,5.25,6.00,

6.50,6.25,7.00,6.90,6.80,6.80,7.10,7.00,6.80,6.50,

6.25,6.00,6.50,7.00,6.80,6.80,6.50,5.75,5.80,6.80),

y =c( 7.38,8.51,9.52,7.50,9.33,8.28,8.75,7.87,7.10,8.00,

7.89,8.15,9.10,8.86,8.90,8.87,9.26,9.00,8.75,7.95,

7.65,7.27,8.00,8.50,8.75,9.21,8.27,7.67,7.93,9.26)

)lm.sol<-lm(y~x1+x2,data=toothpaste)

summary(lm.sol)

#獲得x1和y的散點圖與回歸直線

attach(toothpaste)

plot(x1,y)

abline(lm(y~x1))

#獲得x2和y的散點圖與回歸直線

plot(x2,y)

abline(lm(y~x2))

#獲得x1和y的散點圖與回歸曲線

lm1.sol<-lm(y~x1+i(x1^2))

summary(lm1.sol)

x<-seq(min(x1),max(x1),len=200)

y<-predict(lm1.sol,data.frame(x1=x))#用predict()函式求多元回歸的**

plot(y~x1)

lines(x,y)

#獲得x2和y的散點圖與回歸曲線

lm2.sol<-lm(y~x2+i(x2^2))

summary(lm2.sol)

x<-seq(min(x2),max(x2),len=200)

y<-predict(lm2.sol,data.frame(x2=x))#用predict()函式求多元回歸的**

plot(y~x2)

lines(x,y)

#考慮x2^2,修正擬合模型

lm.new<-update(lm.sol,.~.+i(x2^2))

summary(lm.new)

#剔除x2,修正擬合模型

lm2.new<-update(lm.new,.~.-x2)

summary(lm2.new)

#考慮x1*x2,修正擬合模型

lm3.new<-update(lm.new,.~.+x1*x2)

summary(lm3.new)

R語言多元線性回歸

1 根據業務經驗挑選出可能對 目標變數有影響的指標 2 將這些指針對目標變數做相關性分析cor 挑選出相關係數較大的指標進一步分析 3 檢驗這些指標與目標變數是否線性關係,一般可以plot 檢驗,如果非線性,嘗試做平方或開方等方法使之變成線性 3 將相關係數較大的指標全部作為解釋變數做多遠線性回歸l...

R 多元線性回歸(擬合)

r實現多元線性回歸,主要利用的就是lm 函式 熟悉其他統計回歸量的函式,對做回歸分析也是很有幫助的。以下是r做多元線性回歸的幾個基本步驟 1.讀入資料,r studio直接有按鈕,否則就 zsj 資料一般從excel的csv或者txt裡讀取,實現整理好以符合r的資料框的結構 2.畫相關圖選擇回歸方程...

R語言線性回歸

線性回歸模型 線性回歸模型的計算 lm 可以完成多元線性回歸函式的估計,回歸系統與回歸方程的檢驗的工作 summary 函式,返回列表內容 x1表示體重,x2表示年齡,y表示對應體重與年齡下的血壓 blood data frame x1 c 76.0,91.5,85.5,82.5,79.0,80.5...