首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用插入包从rpart中获取规则

使用插入包从rpart中获取规则
EN

Data Science用户
提问于 2018-03-27 16:30:20
回答 1查看 648关注 0票数 1

我正在寻找一种从决策树中提取规则的方法。我有8个预测器,它们都是分类变量,响应变量有三个输出A、B和C。

我已经开发了模型,也可以创建决策树,但是我在理解树和从模型中提取规则方面遇到了困难。

我所拥有的8个预测因子可以有值a,b,c,d,e。

举个例子,我想从我的决策树中提取规则,如下所示:

  • 规则1:预测器1-a预测器2-b预测器3-c预测器4-b预测器5 a预测器6-d预测器7-e预测器8-a结果:a
  • 规则2:预测器1-a预测器2-b预测器3-d预测器4-b预测器5 a预测器6-d预测器7-b预测器8-a结果:a
  • 规则3:预测器1-a预测器2-b预测器3-d预测器4-a预测器5-a预测器6预测器7-b预测器8-a结果:b

以此类推。

是否有办法像我前面解释的那样,从我的决策树中得到规则?

下面是我的模型的结果:

  • 124个样本
  • 8个预测因子
  • 三班:a,B,C

没有预处理。

重采样:交叉验证(10倍,重复10次)。

样本数量摘要: 112,111,111,112,110,112,.

调整参数之间的重采样结果:

代码语言:javascript
复制
  cp           Accuracy   Kappa  
  0.00000000  1.0000000  1.0000000  
  0.06329114  1.0000000  1.0000000  
  0.12658228  1.0000000  1.0000000  
  0.18987342  1.0000000  1.0000000  
  0.25316456  1.0000000  1.0000000  
  0.31645570  1.0000000  1.0000000  
  0.37974684  1.0000000  1.0000000  
  0.44303797  0.7261846  0.5696935  

用最大值选择最优模型的精度。模型的最终值为cp = 0.3797468。n= 124

节点),拆分,n,丢失,yval,(yprob) *表示终端节点。

代码语言:javascript
复制
1) root 124 79 A (0.3629032 0.2741935 0.3629032)    
  2) Activity4e< 0.5 45  0 A (1.0000000 0.0000000 0.0000000) *  
    3) Activity4e>=0.5 79 34 C (0.0000000 0.4303797 0.5696203)    
      6) Activity7c>=0.5 34  0 B (0.0000000 1.0000000 0.0000000) *  
      7) Activity7c< 0.5 45  0 C (0.0000000 0.0000000 1.0000000) * 
EN

回答 1

Data Science用户

发布于 2018-10-29 12:30:52

如果使用rpart构建了原始树,则可以使用rpart.rules函数。

代码语言:javascript
复制
library(rpart)
fit<-rpart(Reliability~.,data=car.test.frame)
rpart.rules(fit)
票数 2
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/29599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档