# %%
# 决策树
IMnum = 120
# InitialMonthnum初始训练数据为6年,72个月
train_data = dataset.ix[dtlist[:IMnum],:]
train_X = np.array(train_data[fctname])
train_Y = np.array(train_data['label'])
from sklearn import tree
import matplotlib.pyplot as plt
clf = tree.DecisionTreeClassifier(max_leaf_nodes=6)
clf = clf.fit(train_X, train_Y)
test_data = dataset.ix[dtlist[IMnum:],:]
test_X = np.array(test_data[fctname])
test_Y = np.array(test_data['label'])
clf.score(test_X, test_Y)
# clf.decision_path(train_X)
from sklearn.tree import export_graphviz
export_graphviz(
clf,
out_file="tree.dot",
feature_names=fctname,
# class_names='label',
rounded=True,
filled=True
)
进入windows命令行界面,cd 切换到tree.dot
所在的路径,执行
dot -Tpng tree.dot -o tree.png
graphviz安装及使用: