题目要求
本次设计要求实现信贷用户逾期预测功能。具体要求如下:利用所学数据挖掘算法对给定数据进行训练得出信用评估模型,依据模型对1000个贷款申请人是否逾期做出预测(0-未逾期 1-逾期)。
数据说明
数据概述 :
数据包括脱敏后的个人基本信息、持卡信息、消费信息及信贷信息等。详见字段解释.xlsx。
数据结构和数据规模 :
数据分为训练集和验证集。 详见model.csv和test.csv
- 编程环境及语言
编程环境:Python 3.5 Jupyter
语言:Python
- 算法思想
决策树构造的基本思想就是随着树深度的增加,节点的熵迅速地降低。熵降低的速度越快越好,这样我们就可以得到一棵高度最矮而且有效的决策树。
C4.5算法的思想:
- 从根节点开始,对节点计算所有可能的特征的信息增益率,选择信息增益率值最大的特征作为节点的划分特征;
- 由该特征的不同取值建立子节点;
- 再对子节点递归地调用以上方法,构建决策树;
- 到所有特征的信息增益率都很小或者没有特征可以选择为止,得到最终的决策树
- 算法伪码
#数据读取及预处理
dataf=pda.read_csv(fname,encoding="gbk")
#数据预处理,缺失的空值填上平均值
dataf.iloc[:,2:201]=dataf.iloc[:,2:201].fillna(dataf.iloc[:,2:201].median())
#划分训练数据测试数据
Xtrain,Xtest,Ytrain,Ytest = train_test_split(xf,yf,test_size=0.1)
#构建决策树
clf=tr