我编写了此代码以应用决策树算法。但是,然后使用Graphviz绘制树木时,没有发生任何事情……任何人都可以检查我所缺少的东西吗?
features=
age balance day month duration campaign
58 2143 5 5 261 1
44 29 5 5 151 2
33 2 5 5 76 1
47 1506 5 5 92 3
33 1 5 5 198 1
target=
conversion
0
1
1
0
# Create decision tree
from sklearn.tree import DecisionTreeClassifier
from sklearn import datasets
from IPython.display import Image
from sklearn import tree
import pydotplus
import graphviz
X=features
y=target
clf = DecisionTreeClassifier(random_state=0)
# Train model
model = clf.fit(X, y)
# Create DOT data
dot_data = tree.export_graphviz(clf, out_file=None,
feature_names=features.columns,
class_names=['0','1'])
# Draw graph
graph = pydotplus.graph_from_dot_data(dot_data)
# Show graph
Image(graph.create_png())
运行此代码时,我收到一个InvocationException:找不到GraphViz的可执行文件!这是什么意思?
答案 0 :(得分:-1)
您需要从sklearn.trees导出dt_model,它基本上是使用功能export_graphviz而不是[dt_model = tree.DecisionTreeClassifier(max_depth = 4)]的适合树的目标文件
然后使用pydotplus进行显示