如何在matlab上设置决策树的最大深度?

时间:2017-11-11 13:41:30

标签: matlab decision-tree

如何构建具有我想要的深度的树?例如,我想创建一个只有3个深度的决策树。

load ionosphere 
treeModel = fitctree(X,Y) 
view(treeModel) 
view(treeModel,'mode','graph')

此代码创建7深度树。我使用相同的数据集,但我想创建具有3或2深度的树。我怎么能在matlab上做?

2 个答案:

答案 0 :(得分:0)

您可以使用MaxDepth名称 - 值对参数控制最大深度。

阅读the documentation了解详情。

treeModel = fitctree(X,Y,'MaxDepth',3);

答案 1 :(得分:0)

在构建Matlab环境时尽量保持灵活性。另外,根据官方文档,请注意MaxDepth选项仅适用于在高数组上使用fitctree的情况。

load ionosphere 
treeModel = CreateTreeModel(X,Y,3);
view(treeModel) 
view(treeModel,'mode','graph')

function tm = CreateTreeModel(x,y,depth)
    if (nargin < 3)
        tm = fitctree(x,y);
        return;
    end

    if (depth < 1)
        depth = 1;
    end

    tm = fitctree(x,y,'MaxDepth',depth);
end