为什么我不能复制单个树使用函数时“TreeBagger”与适当的组选项,类似于使用函数时获得的树“fitctree”?

1视图(30天)
这是试图使用函数生成决策树“fitctree”和“TreeBagger”一个特定的数据集。当创建一个树使用函数“fitctree”,也就是说,
树= fitctree (X, Y,“MinLeafSize”而圆(长度(X) / 50),“MaxNumSplits”5);
视图(树,“模式”,“图”);
那么这些树似乎没有分支,看到下面的截图,
在试图产生一个随机森林,只有一棵树,不能替代样本和使用所有的独立变量的预测,那么这棵树看起来不同于上面创建函数“fitctree”,在这种情况下,树有很多树枝和树叶,也就是说,
森林= TreeBagger (1, X, Y,“InBagFraction”,1,“NumPredictorsToSample”,“所有”,“SampleWithReplacement”,“关闭”,“MinLeafSize”而圆(长度(X) / 50),“MaxNumSplits”5);
treeForest = forest.Trees {1};
视图(treeForest,“模式”,“图”);
为什么我不能复制单个树使用函数时“TreeBagger”与适当的组选项,类似于使用函数时获得的树“fitctree”?

接受的答案

MathWorks支万博1manbetx持团队
请注意,这两个功能“fitctree”和“TreeBagger”使用一个属性的名字“MergeLeaves”合并相同的树叶从树枝,看到下面的文档页面在这个选项的更多信息,
此外也请注意,这个标志是默认设置为“TreeBagger”和“真正的”功能默认设置为“假”“fitctree”函数,因此你看到的行为。正确的复制一个树的生成类似于函数的行为“fitctree”在这种情况下将通过下面的函数调用,
森林= TreeBagger (1, X, Y,“MergeLeaves”,“上”,“InBagFraction”,1“NumPredictorsToSample”,“所有”,“SampleWithReplacement”,“关闭”,“MinLeafSize”而圆(长度(X) / 50),“MaxNumSplits”5);
treeForest = forest.Trees {1};
视图(treeForest,“模式”,“图”);
这样会产生一个单一的树没有叶子节点,类似于使用“fitctree”功能。

更多的答案(0)

标签

没有标签了。

s manbetx 845


释放

R2021a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!