美文网首页
R语言 多重回归

R语言 多重回归

作者: yuanyb | 来源:发表于2017-11-13 18:35 被阅读0次

    多元回归是线性回归到两个以上变量之间的关系的延伸。 在简单线性关系中,我们有一个预测变量和一个响应变量,但在多元回归中,我们有多个预测变量和一个响应变量。
    多元回归的一般数学方程为 -
    y = a + b1x1 + b2x2 +...bnxn
    以下是所使用的参数的描述 -
    y是响应变量。
    a,b1,b2 ... bn是系数。
    x1,x2,... xn是预测变量。
    我们使用R语言中的lm()函数创建回归模型。模型使用输入数据确定系数的值。 接下来,我们可以使用这些系数来预测给定的一组预测变量的响应变量的值。
    lm()函数

    此函数创建预测变量和响应变量之间的关系模型。
    语法

    lm()函数在多元回归中的基本语法是 -
    lm(y ~ x1+x2+x3...,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 # # # ","
    ")

    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

    相关文章

      网友评论

          本文标题:R语言 多重回归

          本文链接:https://www.haomeiwen.com/subject/nrttvxtx.html