决策树是大数据技术进行分类和预测的一种,决策树学习是一种基于实例归纳学习算法,它主要从一组无次序、无规则的实例中推理出以决策树所代表分类规则。它采用从上向下的递归方式,在决策树的内部节点进行属性的比较,并根据不同属性值判断从该节点向下的分支,在决策树的叶节点得到结论。
代码如下
import pandas as pd
from sklearn import tree
from sklearn.externals.six import StringIO
import pydotplus
def loadDataSet():
data = pd.read_csv("All.csv")
x = data.iloc[:, :8].as_matrix()
y = data.iloc[:, 8].as_matrix()
print(x)
print(y)
return x,y
loadDataSet()
x,y=loadDataSet()
clf = tree.DecisionTreeClassifier(max_depth=100) # 算法模型
clf = clf.fit(x, y) # 模型训练
dot_data = StringIO()
tree.export_graphviz(clf, out_file=dot_data,
feature_names=['gzx','gzy','x','y','z','Rx','Ry','Rz'],
class_names=['1','2','3','4','5','6'],
filled=True, rounded=True,
special_characters=True)
graph = pydotplus.graph_from_dot_data(dot_data.getvalue())
graph.write_pdf("iris1.pdf") # 写入pdf