export_graphviz中的“class_names”意外关键字错误

时间:2015-12-01 01:47:05

标签: python-2.7 scikit-learn graphviz pydot

使用以下代码:

classes = ['ham', 'spam']
dot_data = StringIO()
with open("./plots/ritesh.dot", "w") as f:
    export_graphviz(dt_old.named_steps['classifier'], out_file=f, feature_names=vocab1, class_names=classes)

我收到错误的意外关键字参数。

Traceback (most recent call last):
  File "DecisionTree.py", line 198, in <module>
    main()
  File "DecisionTree.py", line 133, in main
    export_graphviz(dt_old.named_steps['classifier'], out_file=f, feature_names=vocab1, class_names=classes)
TypeError: export_graphviz() got an unexpected keyword argument 'class_names'

但在scikit-learn doc中明确提到

sklearn.tree.export_graphviz(decision_tree, out_file='tree.dot', max_depth=None, feature_names=None, class_names=None, label='all', filled=False, leaves_parallel=False, impurity=True, node_ids=False, proportion=False, rotate=False, rounded=False, special_characters=False)

TypeError的原因是什么?

1 个答案:

答案 0 :(得分:7)

您安装的sklearn版本可能与文档过时了。 如果您使用anaconda安装了sklearn,请尝试在命令行上运行 “conda update scikit-learn”