一、背景及目标
根据提供的金融数据,分别使用逻辑回归、决策树、SVM、xgboost以及LightGBM这5种算法实现对贷款用户是否会逾期的预测估计,表格中,status是标签:0表示未逾期,1表示逾期。最后按不同的标准进行模型的评估。
二、任务分析
- 导入数据后,首先,由于数据中存在缺失值,因此需要对缺失值数据进行预处理。
- 其次,对明显与模型无关的特征进行删除。
- 最后,进行模型训练,预测结果以及输出评分。
三、数据预处理以及代码
一共4754行,89列(除去首行、首列)
- 直接删除,对模型影响不大的数据及特征,比如固定的个人信息
列:custid、trade_no、bank_card_no、id_name
行:删除很多项特征缺失的用户信息
缺失特征数据的用户数据:apply_score等到最后一个特征全为缺失项的用户数据 - 特征转换:特征student_feature列的NA转为0,2转为0(2只有2个)
- 几个需考虑的因素
城市:境外0,一线1,二线2,三线3,四线4,NA及其他(共4组数据,删除)
现阶段不进行处理而直接删除的列:比如 first_transaction_time,latest_query_time,loans_latest_time
代码实现:
导入包
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import*
from sklearn.linear_model import LogisticRegression
from sklearn.svm import LinearSVC
from sklearn.tree import DecisionTreeClassifier
from xgboost import XGBClassifier
from lightgbm import LGBMClassifier
数据处理
"""2. 读取数据"""
dataset = pd.read_csv('F:\AI\mission_data\mission_data\data.csv&