數據集的下載地址為 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