案例一:基于sklearn库的cart算法示例代码。构建决策树(采用gini作为指标)对随机生成的数字进行分类,自变量1004矩阵数字小于10,因变量1001矩阵数字小于2,树的最大深度限制为3层,训练完成之后将树可视化显示。
from graphviz import Source
import numpy as np
import random
from sklearn import tree
np.random.seed(42)#定种子
X=np.random.randint(10,size=(100,4))#0-9 100个4*1
print(X[1])
print(X)
print("---")
Y=np.random.randint(2,size=100)
print(Y)
a=np.column_stack((Y,X))#把yx拼接起来
print(a)
clf=tree.DecisionTreeClassifier(criterion="gini",max_depth=3)
clf=clf.fit(X,Y)
graph=Source(tree.export_graphviz(clf,out_file=None))
graph.format="png"#png格式
graph.render("cart_tree",view=True)`#生成图片view