小白学R 第六课

你好,这里是R数据课堂,我是一水。

我们先来回顾一下第五课的关键语句参数:

# 纵坐标ylim

# 图形宽度xlim,width,space

# 图形宽度border

# 图形填充色col

# 行标签cex.names

# 数据标签text

今天这节课我们来学习决策树分类模型C5.0:

数据准备

模型输出

01 数据准备

credit

str(credit)

这个数据集的变量是贷款申请人的相关信息,可以看到数据集中既有因子变量也有数值变量。这堂课的分析我们用default作为因变量,其他变量作为自变量。这次分析的目的是根据自变量信息判断申请人是否会拖欠贷款。

02模型输出

library("C50")

model

summary(model)

模型分析语句中,credit[-17]表示自变量信息,summary命令显示模型结果,由于决策树比较大,这里我们只显示部分结果进行说明。

第一部分是决策树结果:

左侧红色方框是结果中的变量使用顺序,变量越早出现说明变量的重要性越高,这次分析的最重要的变量是checking_balance,其次是credit_history,然后是housing,接下来是housing的不同分支对变量的使用。

右侧绿色的边框是叶节点的输出,包括因变量的结果(NO)、到达该叶节点的数据点数量(457)和对因变量分类错误的数据点数量(60)。

决策树第一行输出的意思是,checking_balance变量的值>200 DM(货币单位,德国马克)或者变量值是unknown的数据点一共有457个人,这些人会被模型判定为NO(不拖欠贷款),这其中有60个人的判定是错误的(有60个数据点实际是YES,却被模型判定为NO)。

第二部分是模型结果与真实结果的对比:

可以看到判断正确的数据点数量是868(668+200),所以模型的准确率是86.8%(一共1000个数据点)。

这里需要注意一点,这个案例是判断贷款申请人是否会拖欠贷款,如果实际上会拖欠的申请人被模型判定为不会拖欠贷款,这样的判错成本是很高的,所以评价模型除了使用准确率还要结合实际情况进行理解。

第三部分是变量的使用情况:

可以看到最重要的三个变量是checking_balance、credit_history和months_loan_duration。

03 小结

这节课我们学习决策树分类模型的用法,先用C5.0语句建立模型,然后用summary语句查看模型结果。如果想要预测新的数据点的分类情况,请用如下语句:

credit_pred

model是上面已经建立的决策树模型对象,credit_test是新数据点对象。

其实决策树容易存在过拟合的问题,一般会先把数据集拆分为两部分,分别是训练集和测试集,训练集用来拟合模型,测试集用来检验模型的性能。这属于模型优化的内容,后面的课程会具体讲解。

感谢阅读,今天的课程有任何操作问题,请留言。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180413G0ZCWD00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券