如何在 r 中绘制决策树(附示例)


机器学习中,决策树是一种模型,它使用一组预测变量来创建预测响应变量值的决策树。

在 R 中绘制决策树的最简单方法是使用rpart.plot包中的prp()函数。

下面的例子展示了如何在实际中使用这个功能。

示例:在 R 中绘制决策树

在本例中,我们将使用ISLR包中的Hitters数据集,其中包含 263 名职业棒球运动员的各种信息。

我们将使用此数据集构建一个回归树,该回归树使用本垒打和打球年份来预测给定球员的薪水。

以下代码展示了如何拟合此回归树以及如何使用prp()函数绘制树:

 library (ISLR)
library (rpart)
library (rpart.plot)

#build the initial decision tree
tree <- rpart(Salary ~ Years + HmRun, data=Hitters, control=rpart. control (cp= .0001 ))

#identify best cp value to use
best <- tree$cptable[which. min (tree$cptable[," xerror "])," CP "]

#produce a pruned tree based on the best cp value
pruned_tree <- prune (tree, cp=best)

#plot the pruned tree
prp(pruned_tree)

请注意,我们还可以使用prp () 函数中的faclenextraroundintdigits参数来自定义决策树的外观:

 #plot decision tree using custom arguments
prp(pruned_tree,
    faclen= 0 , #use full names for factor labels
    extra= 1 , #display number of observations for each terminal node
    roundint= F , #don't round to integers in output
    digits= 5 ) #display 5 decimal places in output 

在R中绘制决策树

我们可以看到树有六个终端节点。

每个终端节点显示该节点中玩家的预测工资以及属于该评级的原始数据集的观察数。

例如,我们可以看到,在原始数据集中,有 90 名经验不足 4.5 年的球员,他们的平均工资为$225.83K

解释 R 中的回归树

我们还可以使用该树根据给定球员的多年经验和平均本垒打来预测他们的薪水。

例如,一名拥有 7 年经验、平均打出 4 个本垒打的球员,其预期薪资为$502.81k

R 中回归树的示例

这是使用决策树的优点之一:我们可以轻松地可视化和解释结果。

其他资源

以下教程提供有关决策树的其他信息:

分类树和回归树简介
决策树与随机森林:有什么区别?
如何在 R 中拟合分类树和回归树

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注