热线电话:13121318867

登录
首页精彩阅读R语言多元回归
R语言多元回归
2017-06-20
收藏

R语言多元回归

多元回归是线性回归成多于两个变量之间关系的延伸。在简单的线性关系,我们有一个预测值和一个响应变量,但在多元回归我们有一个以上的预测值变量和一个响应变量。

对于多元回归的一般数学方程为:

y= a+b1x1+b2x2+...bnxn

对于多元回归的一般数学方程为:...

y - 是响应变量

a,b1,b2...bn - 是系数

x1,x2,...xn - 是预测变量


我们创建一个使用在 R 中的 lm() 函数的回归模型,模型确定使用输入数据的系数的值。接下来,我们可以预测响应变量的值对于给定的使用这些系数预测变量。

lm() 函数

这个函数创建来预测和响应变量之间的关系模型。

语法

这是 lm()函数的多元回归的基本语法:

lm(y ~ x1+x2+x3...,data)

以下是所使用的参数的说明:

formula 是一个符号呈现所述响应变量和预测变量之间的关系。

data 是在其上式将被应用的向量。

示例

输入数据

考虑数据集“mtcars”在R环境中可用。它提供了不同车型之间的每加仑(mpg)里程计汽车和一些参数的比较,气缸容量(“disp”),马力(“hp”),汽车(“wt”)的重量。

该模型的目标是建立“mpg”与"disp","hp" 和“wt”作为预测变量的响应变量之间的关系。我们从 mtcars 数据创建用于此目的设置这些变量的子集。

input <- mtcars[,c("mpg","disp","hp","wt")]
print(head(input))

当我们上面的代码执行时,它产生以下结果:

                   mpg disp  hp    wt
Mazda RX4         21.0  160 110 2.620
Mazda RX4 Wag     21.0  160 110 2.875
Datsun 710        22.8  108  93 2.320
Hornet 4 Drive    21.4  258 110 3.215
Hornet Sportabout 18.7  360 175 3.440
Valiant           18.1  225 105 3.460

创建关系模型及获得系数

input <- mtcars[,c("mpg","disp","hp","wt")]

# Create the relationship model.
model <- lm(mpg~disp+hp+wt, data=input)

# Show the model.
print(model)

# Get the Intercept and coefficients as vector elements.
cat("# # # # The Coefficient Values # # # ","\n")

a <- coef(model)[1]
print(a)

Xdisp <- coef(model)[2]
Xhp <- coef(model)[3]
Xwt <- coef(model)[4]

print(Xdisp)
print(Xhp)
print(Xwt)

当我们上面的代码执行时,它产生以下结果:

Call:
lm(formula = mpg ~ disp + hp + wt, data = input)

Coefficients:
(Intercept)         disp           hp           wt  
  37.105505    -0.000937    -0.031157    -3.800891  

# # # # The Coefficient Values # # #
(Intercept)
   37.10551
         disp
-0.0009370091
         hp
-0.03115655
       wt
-3.800891

创建方程回归模型

基于以上和截距系数值,我们创建的数学方程。

Y = a+Xdisp.x1+Xhp.x2+Xwt.x3
or
Y = 37.15+(-0.000937)*x1+(-0.0311)*x2+(-3.8008)*x3

应用公式预测新的值

我们可以使用上面创建的回归方程来预测里程,在提供了一组新的排量,马力和重量的值。

对于汽车, disp = 221, hp = 102 及 wt = 2.91 预测的里程是:

Y = 37.15+(-0.000937)*221+(-0.0311)*102+(-3.8008)*2.91 = 22.7104

数据分析咨询请扫描二维码

最新资讯
更多
客服在线
立即咨询