拨浪鼓中的决策树可视化错误错误:prp的FUN参数不是函数

时间:2015-05-29 06:43:25

标签: r visualization decision-tree rattle

我为内置的葡萄酒数据集创建了一个响亮的决策树 输出如下所示

分类的决策树模型摘要(使用' rpart'构建):

library(rpart)
library(rattle)

n= 124 

node), split, n, loss, yval, (yprob)
      * denotes terminal node

 1) root 124 73 2 (0.30645161 0.41129032 0.28225806)  
   2) Proline>=953.5 33  0 1 (1.00000000 0.00000000 0.00000000) *
   3) Proline< 953.5 91 40 2 (0.05494505 0.56043956 0.38461538)  
     6) Intensity< 3.825 44  0 2 (0.00000000 1.00000000 0.00000000) *
     7) Intensity>=3.825 47 12 3 (0.10638298 0.14893617 0.74468085)  
      14) Flavanoids>=1.385 13  6 2 (0.38461538 0.53846154 0.07692308) *
      15) Flavanoids< 1.385 34  0 3 (0.00000000 0.00000000 1.00000000) *

Classification tree:
rpart(formula = Class ~ ., data = crs$dataset[crs$train, c(crs$input, 
    crs$target)], method = "class", parms = list(split = "information"), 
    control = rpart.control(usesurrogate = 0, maxsurrogate = 0))

Variables actually used in tree construction:
[1] Flavanoids Intensity  Proline   

Root node error: 73/124 = 0.58871

n= 124 

        CP nsplit rel error  xerror     xstd
1 0.452055      0  1.000000 1.00000 0.075061
2 0.383562      1  0.547945 0.52055 0.070325
3 0.082192      2  0.164384 0.26027 0.054946
4 0.010000      3  0.082192 0.21918 0.051137

Time taken: 0.02 secs

规则列在下面

Tree as rules: 

 Rule number: 2 [Class=1 cover=33 (27%) prob=1.00]
   Proline>=953.5

 Rule number: 14 [Class=2 cover=13 (10%) prob=0.38]
   Proline< 953.5
   Intensity>=3.825
   Flavanoids>=1.385

 Rule number: 15 [Class=3 cover=34 (27%) prob=0.00]
   Proline< 953.5
   Intensity>=3.825
   Flavanoids< 1.385

 Rule number: 6 [Class=2 cover=44 (35%) prob=0.00]
   Proline< 953.5
   Intensity< 3.825

[1] 2 6 1 5 3 7 4

我得到的输出图如下所示 The output of the tree plot

当我尝试绘制树时,它只显示节点的轮廓。没有列出任何其他内容。我尝试了不同的数据集。所有人都显示出相同的结果。
除决策树以外的所有情节都完美无缺。

如何解决这个问题?这与任何包裹问题有关吗?

2 个答案:

答案 0 :(得分:3)

解决它..
删除了以下软件包并重新安装

   remove.packages('rpart.plot')
   remove.packages('rpart')
   remove.packages('rattle')
   remove.packages('RColorBrewer')

从控制台再次安装它们(然后它将安装所有依赖项)

install.packages('rattle')
install.packages('rpart')
install.packages('rpart.plot')
install.packages('RColorBrewer')

现在重新加载包,它解决了问题

library(rattle)
library(rpart.plot)
library(RColorBrewer)

答案 1 :(得分:1)

library(rpart)
library(rattle)

我没有足够的信息来回答您的问题,因此我不确定您的情况会出现什么问题。但请在下面找到使用fancyRpartPlot生成树的示例代码。

model<-rpart(Type~ Flavanoids+Proline+Hue, data=wine)
fancyRpartPlot(model)

enter image description here