R 语言 多元回归

  • 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 - 是将在其上应用公式的向量。
    输入数据
    考虑R环境中可用的数据集“mtcars”。它根据每加仑行驶里程(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
    或
    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