R教程

R 逻辑回归

逻辑回归是一种回归模型,其中响应变量(因变量)具有分类值,例如 True/False 或 0/1、它实际上根据与预测变量相关的数学方程,将二元响应的概率作为响应变量的值来衡量。
逻辑回归的一般数学方程是-
y = 1/(1+e^-(a+b1x1+b2x2+b3x3+...))
以下是所用参数的说明-
y 是响应变量。 x 是预测变量。 ab 是数值常数的系数。
用于创建回归模型的函数是 glm() 函数。

语法

逻辑回归中 glm() 函数的基本语法是-
glm(formula,data,family)
以下是所用参数的说明-
公式是表示变量之间关系的符号。 data 是给出这些变量值的数据集。 family 是 R 对象,用于指定模型的详细信息。对于逻辑回归,它的值是二项式的。

示例

内置数据集"mtcars"描述了具有各种发动机规格的汽车的不同型号。在"mtcars"数据集中,传输模式(自动或手动)由 am 列描述,它是一个二进制值(0 或 1)。我们可以在列"am"和其他 3 个列-hp、wt 和 cyl 之间创建逻辑回归模型。
# Select some columns form mtcars.
input <-mtcars[,c("am","cyl","hp","wt")]
print(head(input))
当我们执行上面的代码时,它会产生以下结果-
                  am   cyl  hp    wt
Mazda RX4          1   6    110   2.620
Mazda RX4 Wag      1   6    110   2.875
Datsun 710         1   4     93   2.320
Hornet 4 Drive     0   6    110   3.215
Hornet Sportabout  0   8    175   3.440
Valiant            0   6    105   3.460

创建回归模型

我们使用 glm() 函数来创建回归模型并获取其摘要以供分析。
input <-mtcars[,c("am","cyl","hp","wt")]
am.data = glm(formula = am ~ cyl + hp + wt, data = input, family = binomial)
print(summary(am.data))
当我们执行上面的代码时,它会产生以下结果-
Call:
glm(formula = am ~ cyl + hp + wt, family = binomial, data = input)
Deviance Residuals: 
     Min        1Q      Median        3Q       Max  
-2.17272    -0.14907 -0.01464     0.14116   1.27641  
Coefficients:
            Estimate Std. Error z value Pr(>|z|)  
(Intercept) 19.70288    8.11637   2.428   0.0152 *
cyl          0.48760    1.07162   0.455   0.6491  
hp           0.03259    0.01886   1.728   0.0840 .
wt         -9.14947    4.15332 -2.203   0.0276 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
    null deviance: 43.2297  on 31  degrees of freedom
Residual deviance:  9.8415  on 28  degrees of freedom
AIC: 17.841
Number of Fisher Scoring iterations: 8

结论

在总结中,由于变量"cyl"和"hp"的最后一列中的 p 值大于 0.05,我们认为它们对变量"am"的值的贡献微不足道。在此回归模型中,只有权重 (wt) 会影响"am"值。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4