我想知道是否可以获取pandas.get_dummies的功能名称,以便我可以将它传递给export_graphviz。我正在使用get_dummies编码我的数据集sklearn DecisionTreeClassifier。当我导出树时,我希望节点的输出更易于阅读。是否可以从pandas.get_dummies获取功能名称?
预先感谢您!
编辑:
这里是什么,我试图完成一个例子:
#Concatenate the sets
concated = pd.concat([train_file, test_file])
#Get the encoded set
concated_encoded = pd.get_dummies(concated, columns=cols_to_retain)
#Separate the sets
train = concated_encoded[concated_encoded["Train"] == 1]
test = concated_encoded[concated_encoded["Train"] == 0]
train = train.drop(["Train"], axis=1)
test = test.drop(["Train"], axis=1)
X_train, X_val, y_train, y_val = train_test_split(train, train_outcome, test_size=0.15)
clf = DecisionTreeClassifier(criterion='entropy')
clf = clf.fit(X_train,y_train)
y_pred_val = clf.predict(X_val)
import StringIO
import pydot
dot_data = StringIO.StringIO()
我希望能够标注使用feature_names参数特征
export_graphviz(clf, out_file=dot_data, feature_names=())
graph = pydot.graph_from_dot_data(dot_data.getvalue())
graph.write_png('tree.png')
也许你可以尝试重新说一下这个,也可能举一个例子,这将大大有助于理解你在问什么。 [如何创建一个最小化,完整和可验证的示例](http://stackoverflow.com/help/mcve) – Thanos
@Thanos我添加了我正在尝试做的示例。我希望功能名称出现在我的树中,并被导出。 –