在sklearn Python的决策树中使用pydot制作图表
作者:互联网
我希望这段代码能够创建树的PDF图形.
from sklearn import datasets,tree
import StringIO
import pydot
from sklearn.externals.six import StringIO
iris = datasets.load_iris()
clf = tree.DecisionTreeClassifier()
clf = clf.fit(iris['data'],iris['target'])
dot_data = StringIO.StringIO()
tree.export_graphviz(clf, out_file=dot_data)
graph = pydot.graph_from_dot_data(dot_data.getvalue())
graph.write_pdf("iris.pdf")
有没有办法做我想要的虽然是pydot?这种方式是死路一条.
进一步解释问题,代码在最后一个语句中失败. graph.write_pdf()正在graph.progs()中查找Graphviz,但那里没有条目.错误消息显示找不到Graphviz可执行文件.
无论如何我通过在DOS终端中调用dot.exe命令能够pdf文件,但最好使用pydot来执行此步骤.
解决方法:
添加PATH变量后,看起来您正在导入StringIO,然后调用StringIO.StringIO()
试着打电话:
dot_data = StringIO()
适用于我的python 2.7.6 Win7 x64环境,带有pydot and graphviz error: Couldn’t import dot_parser, loading of dot files will not be possible修复.
标签:python,decision-tree,pydot 来源: https://codeday.me/bug/20190612/1227399.html