分类树的一个常见用途是预测抵押贷款申请人是否会拖欠贷款。数据包含对 5,960 名抵押贷款申请人的观察结果(查看文末了解数据获取方式)。一个名为的变量 Bad
表示申请人在获得贷款批准后是还清贷款还是拖欠贷款。
此示例构建一个树模型,该模型用于对数据进行评分,并可用于对有关新申请人的数据进行评分。
表 :数据表中的变量
变量 | 类型 | 等级 | 描述 |
---|---|---|---|
Bad | 因变量 | 二进制 | 1 = 申请人拖欠贷款或严重拖欠贷款 |
0 = 申请人还清贷款 | |||
CLAge | 预测变量 | 区间 | 最长信用额度的月龄 |
CLNo | 预测变量 | 区间 | 信用额度数量 |
DebtInc | 预测变量 | 区间 | 债务收入比 |
Delinq | 预测变量 | 区间 | 拖欠信用额度的数量 |
Derog | 预测变量 | 区间 | 重大贬损报道数量 |
Job | 预测变量 | 标称 | 职业类别 |
Loan | 预测变量 | 区间 | 申请贷款金额 |
MortDue | 预测变量 | 区间 | 抵押贷款到期金额 |
nInq | 预测变量 | 区间 | 近期信用查询次数 |
Reason | 预测变量 | 二进制 | DebtCon = 债务合并 |
HomeImp = 家庭改善 | |||
Value | 预测变量 | 区间 | 财产价值 |
YoJ | 预测变量 | 区间 | 目前工作年限 |
树模型的因变量是 Bad
,一个有两个值的分类变量(0 代表贷款支付,1 代表违约)。其他变量是模型的预测变量。以下语句将数据加载到会话中并显示数据表的前 10 个观察值。
/* 将变量名称转换为混合大小写 */
data my.hm;
length Bd oan Motue Value 8 Reason Job $7
显示 的前 10 个观测值。
输出数据的部分列表
以下语句创建分类树:
proc maxdepth=5;
model Bad = Dei o JbIq as LAeL
DtInLa Mrue ae J;
prune costcomplexity;
这 MAXDEPTH= 选项指定要生长的树的最大深度为 5。
Bad
在等号左侧 指定 MODEL 语句表明它是因变量。
因为没有包含 GROW 语句,所以 PROC TREEPLIT 默认使用熵度量,它计算增长树的增益。这 PRUNE 语句要求进行成本复杂性修剪。
这 PARTITION 声明要求将观察结果 Hmeq
划分为不相交的子集以进行模型训练和验证。随机选择观测值作为验证子集,概率为 0.3;为训练子集选择剩余的观察值。
FILE= 选项 CODE 语句请求将 SAS DATA 步得分代码保存到名为 trc.sas
.
最终树的概览图
如绘图图例中的颜色所示,为终端节点中的观察分配了 Bad
=0 或 =1 的预测。叶节点中的第一个条形显示与训练分区中=0 或 =1Bad
的预测相匹配的因变量的比例, 叶节点中的第二个条形显示与验证分区中匹配的因变量的比例。线的粗细表示哪些节点具有更多的总观测值。
树形图在是树顶部的详细视图。
联系客服