决策树可视化
cn=['0','1']
# Setting dpi = 300 to make image clearer than default
fig, axes = plt.subplots(nrows = 1,ncols = 1,figsize = (25,30), dpi=300)
tree.plot_tree(tree,
filled = True);
fig.savefig('tree.png')
决策树结构查看
def get_code(tree, feature_names):
left = tree.tree_.children_left
right = tree.tree_.children_right
threshold = tree.tree_.threshold
features = [feature_names[i] for i in tree.tree_.feature]
value = tree.tree_.value
dent_s = ' '
def recurse(left, right, threshold, features, node, dent):
if (threshold[node] != -2):
print(dent+"current value: " + str(value[node]))
print(dent+"if ( " + features[node] + " <= " + str(threshold[node]) + " ) {")
if left[node] != -1:
dent_new = dent_s+dent
recurse (left, right, threshold, features,left[node],dent_new)
print(dent+"} else {")
if right[node] != -1:
dent_new = dent_s+dent
recurse (left, right, threshold, features,right[node],dent_new)
print(dent+"}")
else:
print(dent+"current value: " + str(value[node]))
recurse(left, right, threshold, features, 0, '')
get_code(best_tree, ['x1','x2','x3'])
版权声明:本文为weixin_41744624原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。