如何在python中可视化决策树?

Posted

技术标签:

【中文标题】如何在python中可视化决策树?【英文标题】:How to visualize decision tree it in python? 【发布时间】:2019-04-27 22:25:06 【问题描述】:

我创建了一个决策树并尝试按照答案(Visualizing decision tree in scikit-learn)在 python 中将其可视化,但仍然不起作用:

import pandas as pd
score_v2 = pd.read_csv("C:/TEST_RF_CSV_simple.csv",encoding = "cp950")

from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

score_X = score_v2
score_y = score_v2.buy_lf
X_train, X_test, y_train, y_test = train_test_split(
score_X, score_y, test_size=0.3)

from sklearn.tree import DecisionTreeClassifier
tree=DecisionTreeClassifier(criterion = 'entropy', max_depth=3, 
random_state=0)
tree.fit(X_train, y_train)
tree_1 = tree.fit(X_train, y_train)

from sklearn.tree import export_graphviz
dotfile = open("D:/dtree2.dot", 'w')
tree.export_graphviz(dtree, out_file = dotfile, feature_names = 
X.columns)
dotfile.close()

我的错误是:

AttributeError: 'DecisionTreeClassifier' object has no attribute 
'export_graphviz'

有没有高手帮我解决一下问题?

【问题讨论】:

Python Decision Tree GraphViz的可能重复 【参考方案1】:

export_graphvizsklearn.tree 的函数,而不是来自分类器:

from sklearn.tree import export_graphviz
export_graphviz(tree, out_file=dotfile, feature_names=X.columns)

【讨论】:

谢谢。如果我想工作,你知道如何改进它吗? 比如这个问题的图片。(***.com/questions/31786347/…) 对不起,我不明白你的问题。您可以从此命令中获得 graphviz 的点文件。然后,您可以将其转换为 png。 “工作”和“改进”是什么意思? “优化”。最终目标是输出决策树的图片。 使用 graphviz(准确地说是点)将点转换为 png。查看副本。

以上是关于如何在python中可视化决策树?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Apache Spark (PySpark 1.4.1) 中可视化/绘制决策树?

PYTHON 决策树可视化

决策树随机森林结果可视化

决策树随机森林结果可视化

python 在Python中导出决策树可视化

如何在 R 中绘制/可视化 C50 决策树?