R语言中基于Logistic银行贷款拖欠率用户分析是怎样的

发布时间:2021-12-27 17:59:26 作者:柒染
来源:亿速云 阅读:162

R语言中基于Logistic银行贷款拖欠率用户分析是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。



今天推一篇广义线性回归模型中的一种,logistic回归,去年参加校创项目,我们组的课题是’基于logistic滴滴打车女性出行安全研究‘,所以,对于这个模型,有一些了解,logistic回归多用于医学统计,因变量为定性变量,可以为有序、分等级的,比如有病、无病;满意、一般、不满意等。logistic回归多用于寻找危险因素,比如某一疾病的危险因素有哪些?预测某病发生的概率有多大?判别某人有多大可能性是属于某病。

1.数据准备     

建模之前,首先要有一定的数据支持。

截取部分数据如下

R语言中基于Logistic银行贷款拖欠率用户分析是怎样的

R语言中基于Logistic银行贷款拖欠率用户分析是怎样的

2.模型理论准备
     

Logistic 回归属于概率型非线性回归,分为二分类和多分类的回归模型。对于二分类的Logistic回归,因变量y只有“是、否”两个取值,记为1和0。假设在自变量x1,x2,...,xP,作用下,y取“是”的概率是p,则取“否”的概率是1-p,研究的是当y取“是”发生的概率p与自变量x1,x2,...,xP的关系。

当自变量之间出现多重共线性时,用最小二乘估计估计的回归系数将会不准确,消除多重共线性的参数改进的估计方法主要有岭回归和主成分回归。

3.建模准备

Logistic 回归模型的建模步骤


1)根据分析目的设置指标变量(因变量和自变量),然后收集数据。

2)y取1的概率是p=P(y=1|x),取0概率是1-p。用Ln(p/1-p)和自变量列出线性回归方程,估计出模型中的回归系数。

3)进行模型检验:根据输出的方差分析表中的F值和p值来检验该回归方程是否显著,如果p值小于显著性水平a则模型通过检验,可以进行下一步回归系数的检验;否则要重新选择指标变量,重新建立回归方程。

4)进行回归系数的显著性检验:在多元线性回归中,回归方程显著并不意味着每个自变量对y的影响都显著,为了从回归方程中剔除那些次要的、可有可无的变量,重新建立更为简单有效的回归方程,需要对每个自变量进行显著性检验,检验结果由参数估计表得到。采用逐步回归法,首先剔除掉最不显著的因变量,重新构造回归方程,一直到模型和参与的回归系数都通过检验。

5)模型应用:输入自变量的取值,就可以得到预测变量的值,或者根据预测变量的值去控制自变量的取值。

R语言中基于Logistic银行贷款拖欠率用户分析是怎样的

4.得出结论     

logistic回归模型程序

# 读入数据

Data<-read.csv("C:/Users/27342/Desktop/bankloan.csv")[2:701, ]

# 数据命名

colnames(Data)<- c("x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "y")

# logistic回归模型

glm <- glm(y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8,

          family = binomial(link = logit), data = Data)

summary(glm)

# 逐步寻优法

logit.step <- step(glm, direction = "both")

summary(logit.step)

# 前向选择法

logit.step <- step(glm, direction = "forward")

summary(logit.step)

# 后向选择法

logit.step <- step(glm, direction = "backward")

summary(logit.step)


部分结果展示

Call:

glm(formula = y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8, family = binomial(link = logit),data = Data)


Deviance Residuals:

   Min       1Q   Median       3Q      Max  

-2.3516  -0.6461  -0.2934   0.2344   3.0087  


Coefficients:

            Estimate Std. Error z value Pr(>|z|)    

(Intercept) -1.550059   0.618178  -2.507   0.0122 *  

x1           0.034636   0.017351   1.996   0.0459 *  

x2           0.090290   0.122838   0.735   0.4623    

x3          -0.257532   0.033096  -7.781 7.17e-15 ***

x4          -0.104765   0.023203  -4.515 6.33e-06 ***

x5          -0.009071   0.007743  -1.172   0.2414    

x6           0.067232   0.030289   2.220   0.0264 *  

x7           0.615093   0.113216   5.433 5.54e-08 ***

x8           0.068376   0.077013   0.888   0.3746    

---

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 801.68  on 698  degrees of freedom

Residual deviance: 551.00  on 690  degrees of freedom

(1 observation deleted due to missingness)

AIC: 569

Number of Fisher Scoring iterations: 6

采用逐步寻优剔除变量,消除多重共线性,构建新的模型,选模型的AIC值为最小值,采用R语言自带的后向选择函数可以得到同样的模型,自带的前向选择函数得到有全部自变量的全模型,以此,选择最优的模型。

看完上述内容,你们掌握R语言中基于Logistic银行贷款拖欠率用户分析是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

推荐阅读:
  1. 什么是r语言
  2. Python基于Logistic回归建模如何计算某银行在降低贷款拖欠率的数据

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

logistic r语言

上一篇:HTML媒体有哪些知识点

下一篇:css中背景图片开始的位置怎么设置

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》