使用 export graphviz 将特征和 class 名称放入决策树
Get feature and class names into decision tree using export graphviz
下午好,
我正在处理决策树 classifier 并且无法将其可视化。我可以输出决策树,但是我无法将我的特征或 class names/labels 放入其中。我的数据采用 pandas 数据帧格式,然后我将其移入 numpy 数组并传递给 classifier。我已经尝试了一些方法,但当我尝试指定 class 名称时似乎在导出时出错。任何帮助,将不胜感激。代码如下。
all_inputs=df.ix[:,14:].values
all_classes=df['wic'].values
(training_inputs,
testing_inputs,
training_classes,
testing_classes) = train_test_split(all_inputs, all_classes,train_size=0.75, random_state=1)
decision_tree_classifier=DecisionTreeClassifier()
decision_tree_classifier.fit(training_inputs,training_classes)
export_graphviz(decision_tree_classifier, out_file="mytree.dot",
feature_names=??,
class_names=??)
就像我说的,它运行良好并输出决策树,即如果我取出 feature_names 和 class_names 参数。如果可能的话,我想将它们包含在输出中,但遇到了困难...
如有任何帮助,我们将不胜感激!
谢谢,
斯科特
class 名称存储在 decision_tree_classifier.classes_
中,即 DecisionTreeClassifier
实例的 classes_
属性。特征名称应该是输入数据框的列。对于您的情况,您将有
class_names = decision_tree_classifier.classes_
feature_names = df.columns[14:]
就我个人而言 class_names = 确实有效。它将显示结果的符号表示。
feature_names = df.columns[14:]
tree.export_graphviz(decision_tree_classifier, out_file="mytree.dot",
feature_names=feature_names ,
class_names=TRUE)
以下是有关该主题的更多详细信息:https://scikit-learn.org/stable/modules/generated/sklearn.tree.export_graphviz.html
下午好,
我正在处理决策树 classifier 并且无法将其可视化。我可以输出决策树,但是我无法将我的特征或 class names/labels 放入其中。我的数据采用 pandas 数据帧格式,然后我将其移入 numpy 数组并传递给 classifier。我已经尝试了一些方法,但当我尝试指定 class 名称时似乎在导出时出错。任何帮助,将不胜感激。代码如下。
all_inputs=df.ix[:,14:].values
all_classes=df['wic'].values
(training_inputs,
testing_inputs,
training_classes,
testing_classes) = train_test_split(all_inputs, all_classes,train_size=0.75, random_state=1)
decision_tree_classifier=DecisionTreeClassifier()
decision_tree_classifier.fit(training_inputs,training_classes)
export_graphviz(decision_tree_classifier, out_file="mytree.dot",
feature_names=??,
class_names=??)
就像我说的,它运行良好并输出决策树,即如果我取出 feature_names 和 class_names 参数。如果可能的话,我想将它们包含在输出中,但遇到了困难...
如有任何帮助,我们将不胜感激!
谢谢,
斯科特
class 名称存储在 decision_tree_classifier.classes_
中,即 DecisionTreeClassifier
实例的 classes_
属性。特征名称应该是输入数据框的列。对于您的情况,您将有
class_names = decision_tree_classifier.classes_
feature_names = df.columns[14:]
就我个人而言 class_names = 确实有效。它将显示结果的符号表示。
feature_names = df.columns[14:]
tree.export_graphviz(decision_tree_classifier, out_file="mytree.dot",
feature_names=feature_names ,
class_names=TRUE)
以下是有关该主题的更多详细信息:https://scikit-learn.org/stable/modules/generated/sklearn.tree.export_graphviz.html