MATLAB分类树(fitctree)

MATLAB classification trees (fitctree)

我尝试为以下 table 构建分类树: http://en.zimagez.com/zimage/screenshot-211115-014315.php

我写的脚本如下(参考了文档和之前论坛的问题):

TBL = [1,1,1,0,1,0 ; 2,1,1,1,0,1 ; 3,0,0,1,0,0 ; 4,0,1,0,1,0 ;...
    5,1,0,1,1,1 ; 6,0,0,1,1,0 ; 7,1,0,0,0,0 ; 8,0,1,1,1,1];
DT = fitctree(TBL(:,2:5), TBL(:,6), 'SplitCriterion', 'deviance',...
    'CategoricalPredictors','all');
view(DT,'mode','graph')

是的... table 只是 PDF 上的图像所以我不得不自己写... 无论如何,我得到了一棵无效的树:http://www.zimagez.com/zimage/screenshot-211115-074929.php

有谁知道脚本中的问题是什么? 先谢谢了

这个问题只适用于训练集中的 8 个样本,这很让人恼火,不是吗?我在文档中没有看到任何提及它

所以我的修复基本上是复制 TBL。像魔术一样工作(不需要关心这里的第一列,因为它仍然未被使用):

TBL = [1,1,1,0,1,0 ; 2,1,1,1,0,1 ; 3,0,0,1,0,0 ; 4,0,1,0,1,0 ;...
    5,1,0,1,1,1 ; 6,0,0,1,1,0 ; 7,1,0,0,0,0 ; 8,0,1,1,1,1];
TBL = [TBL;TBL];
TBL = [TBL;TBL];

DT = fitctree(TBL(:,2:5), TBL(:,6), 'SplitCriterion', 'deviance',...
    'CategoricalPredictors','all');
view(DT,'mode','graph')