决策树是一种流行的有监督学习方法。我们在pycharm学习决策树时可能会遇到GraphViz’s executables............
的问题。
这是因为不仅要安装graphviz的python包还需要安装graphviz程序。下面是一个决策树可视化的例子。
python包graphviz的安装:pip install graphviz
graphviz应用程序安装:
首先下载安装包:grapviz官网:http://www.graphviz.org/download/
选择对应自己电脑的安装包即可。
安装步骤:除了下面一步选择添加系统环境变量,其它一路默认即可。
下面是对于sklearn的红酒数据集使用决策树分类器,并对决策树可视化的代码,代码源于B站菜菜老师的机器学习:
from sklearn.tree import DecisionTreeClassifier,DecisionTreeRegressor,export_graphviz,ExtraTreeRegressor,ExtraTreeClassifier
from sklearn.datasets import load_wine
from sklearn.model_selection import train_test_split
import pandas as pd
import graphviz
data = load_wine()
dt = pd.concat([pd.DataFrame(data.data),pd.DataFrame(data.target)],axis=1)
print(dt)
print(data.feature_names)
print(data.target_names)
X_train, X_test, y_train, y_test = train_test_split(data.data,data.target, test_size=0.3,random_state=42, shuffle=True)
print(X_train.shape)
print(y_train)
clf = DecisionTreeClassifier()
clf.fit(X_train,y_train)
score = clf.score(X_test,y_test)
print(score)
dot_data = export_graphviz(clf,feature_names=data.feature_names,class_names=data.target_names,filled=True,rounded=True)
graph = graphviz.Source(dot_data.replace('helvetica', '"Microsoft YaHei"'), encoding='utf-8')
graph.render()#可自行添加文件名等参数
运行结果生成看两个文件:Source.gv和Source.gv.pdf