- R 菜鸟教程
- R - 教程
- R - 概述
- R - 环境设置
- R - 基本语法
- R - 数据类型
- R - 变量
- R - 运算符
- R - 判断语句
- R - Loop (循环)
- R - 函数
- R - 字符串
- R - 矢量
- R - 列表
- R - 矩阵
- R - 数组
- R - 因子
- R - 数据帧
- R - 包(Packages)
- R - 数据重塑
- R 数据接口
- R - CSV 文件
- R - Excel 文件
- R - 二进制文件
- R - XML 文件
- R - JSON 文件
- R - Web 数据
- R - 数据库
- R 图表和图形
- R - 饼图
- R - 条形图
- R - 箱线图
- R - 直方图
- R - 折线图
- R - 散点图
- R 统计示例
- R - 平均值、中位数和众数
- R - 线性回归
- R - 多元回归
- R - Logistic 回归
- R - 正态分布
- R - 二项分布
- R - 泊松回归
- R - 协方差分析
- R - 时间序列分析
- R - 非线性最小二乘法
- R - 决策树
- R - 随机森林
- R - 生存分析
- R - 卡方检验
R - Logistic 回归
Logistic 回归是一种回归模型,其中响应变量(因变量)具有分类值,例如 True/False 或 0/1。它实际上根据将其与预测变量相关联的数学方程式,将二元响应的概率测量为响应变量的值。
Logistic 回归的一般数学方程为 −
y = 1/(1+e^-(a+b1x1+b2x2+b3x3+...))
以下是所用参数的描述 -
- y 是响应变量。
- x 是预测变量。
- a 和 b 是数值常数的系数。
用于创建回归模型的函数是 glm() 函数。
语法
逻辑回归中 glm() 函数的基本语法是 -
glm(formula,data,family)
以下是所用参数的描述 -
- formula 是表示变量之间关系的符号。
- data 是给出这些变量值的数据集。
- family 是 R 对象来指定模型的详细信息。它的值是 Logistic 回归的二项式。
例子
内置数据集“mtcars”描述了不同型号的汽车及其各种发动机规格。在 “mtcars” 数据集中,传输模式(自动或手动)由二进制值(0 或 1)列 am 描述。我们可以在列 “am” 和其他 3 列 - hp、wt 和 cyl 之间创建一个 Logistic 回归模型。
# 从mtcar中选择一些列。
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
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
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
结论
在总结中,由于最后一列中的 p 值对于变量 “cyl” 和 “hp” 大于 0.05,我们认为它们对变量 “am” 的值的贡献微不足道。只有权重 (wt) 会影响此回归模型中的 “am” 值。