欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

金融贷款逾期的模型实现

程序员文章站 2022-06-25 08:24:30
数据集的下载地址为 https://pan.baidu.com/s/1dtHJiV6zMbf_fWPi-dZ95g 我们要做的是预测贷款用户是否会逾期。表格中 "status" 是结果标签:0表示未逾期,1表示逾期。 先对数据进行三七分,随机种子2018。这里利用了LR,SVM,DecisionTr ......

数据集的下载地址为 https://pan.baidu.com/s/1dthjiv6zmbf_fwpi-dz95g

我们要做的是预测贷款用户是否会逾期。表格中 "status" 是结果标签:0表示未逾期,1表示逾期。

先对数据进行三七分,随机种子2018。这里利用了lr,svm,decisiontree三种模型,并对这三种模型进行评分

数据划分

先导入划分数据和构建模型所需要的各种包。用read_csv函数打开csv文件。接着再对数据集进行三七划分。在获取训练集的时候,可以用列表推导法,也可以用drop函数,不过要注意再删除列的时候要将 axis = 1

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import logisticregression
from sklearn.tree import decisiontreeclassifier
from sklearn import svm

data_all = pd.read_csv('d:\\data_all.csv',encoding='gbk')

#features = [x for x in data_all.columns if x not in ['status']]
#x = data_all[features]
x = data_all.drop(['status'],axis = 1)
y = data_all['status']
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.3,random_state=2018)

 

三种模型的训练与评分

下一步就是分别构建是三种模型了。

#lr
lr = logisticregression(random_state = 2018)
lr.fit(x_train, y_train)
#decisiontree
dt = decisiontreeclassifier(random_state = 2018)
dt.fit(x_train , y_train)
#svm
svc = svm.svc(random_state = 2018)
svc.fit(x_train , y_train)
#打印三种模型的得分
print(dt.score(x_test,y_test))
print(lr.score(x_test,y_test))
print(svc.score(x_test,y_test))

 

 最后得到三种模型的评分

0.6846531184302733
0.7484232655921513
0.7484232655921513