金融贷款逾期的模型实现
程序员文章站
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