提问者:小点点

决策树显示不是我想要的


我试图得到一个决策树的正确显示;我离得很近,但我就是不能正确地显示班级。

当我使用class_names=True时,我得到以下结果:

请注意,图像被剪辑,但它沿着相同的线继续。

clf.fit(X, Y)
dot_data = tree.export_graphviz(clf, out_file=None, feature_names=combo.columns[2:], class_names=class_names)
graph = graphviz.Source(dot_data)
graph.render('r')

它产生这样的输出,我知道这是错误的,因为唯一出现5次的等级是a。

有什么问题?

https://datascience.stackexchange.com/questions/28574/decisiontreeclassifier-object-has-no-attribute-importances这是一个有趣的答案,有一些有用的提示,但根本没有回答我这里的问题。


共1个答案

匿名用户

我找到了这个解决方案:

clf = tree.DecisionTreeClassifier(max_depth=4)
clf.fit(X, Y)
dot_data = tree.export_graphviz(clf, out_file=None, feature_names=Xprep.columns, class_names=clf.classes_)

事实证明,在适合调用的结果上有一个稍微难以找到的属性:clf.classes_< /code>,其中包含类的文本再现。