R tutorial 20 - Logistic Regression 逻辑回归 (3)

本文是R教程的第20部分,专注于逻辑回归。我们将探讨如何在R中实现逻辑回归,分析模型的性能,并通过真实数据集进行案例研究。内容包括数据预处理、模型构建、预测与评估,帮助你掌握机器学习中的这一重要工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*
Logistic Regression 逻辑回归
薪金与房屋补贴的关系。
假设月薪是12150、那预测他会不会同时申请房屋补贴。
逻辑回归用来预测0与1、是与否的模型。
*/

salary <- c(5500, 5800, 6400, 6700, 7100, 7500, 8800, 9500, 11000, 11500, 12000, 12500, 13100, 13800, 13900, 15000)
# salary <- rnorm(16, 10000, 8000)
claimNum <- c(0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1)

cat("\n")
cat("===============Result===============","\n")
result <- data.frame(claimNum, salary)
result

# Draw
plot(salary, claimNum, main="Salary & claimNum", xlab="Salary", ylab="claimNum", col = "red")

cat("\n")
cat("===============Model===============","\n")
model <- glm(formula= claimNum ~ salary, data=result, family=binomial)
model

cat("\n")
cat("===============Summary Model===============","\n")
summary(model)

# Draw
curve(predict(model, data.frame(salary = x), type="resp"), add=TRUE)
points(salary, fitted(model), pch=20, col = "blue")


cat("\n")
cat("===============Predict===============","\n")
newdata = data.frame(salary = 12150)
predict(model, newdata, type="response")


===============Result=============== 
   claimNum salary
1         0   5500
2         0   5800
3         0   6400
4         0   6700
5         0   7100
6         1   7500
7         0   8800
8         1   9500
9         0  11000
10        1  11500
11        0  12000
12        0  12500
13        1  13100
14        1  13800
15        1  13900
16        1  15000

===============Model=============== 

Call:  glm(formula = claimNum ~ salary, family = binomial, data = result)

Coefficients:
(Intercept)       salary  
 -5.0425584    0.0004657  

Degrees of Freedom: 15 Total (i.e. Null);  14 Residual
Null Deviance:	    21.93 
Residual Deviance: 16.05 	AIC: 20.05

===============Summary Model=============== 

Call:
glm(formula = claimNum ~ salary, family = binomial, data = result)

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-1.5208  -0.6299  -0.4147   0.6946   1.8668  

Coefficients:
              Estimate Std. Error z value Pr(>|z|)  
(Intercept) -5.0425584  2.4936676  -2.022   0.0432 *
salary       0.0004657  0.0002285   2.038   0.0415 *
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 21.930  on 15  degrees of freedom
Residual deviance: 16.046  on 14  degrees of freedom
AIC: 20.046

Number of Fisher Scoring iterations: 4


===============Predict=============== 
        1 
0.6492079 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值