【问题标题】:export_graphviz return NoneTypeexport_graphviz 返回 NoneType
【发布时间】:2017-05-05 13:54:58
【问题描述】:

我正在尝试可视化我的决策树。下面是我尝试过的代码

 from StringIO import StringIO
 from sklearn import tree
 out = StringIO()
 clf =DecisionTreeClassifier(X,y)
 out = tree.export_graphviz(clf, out_file=out)
 print out.getvalue()

下面是我遇到的错误

AttributeError                            Traceback (most recent call last)
<ipython-input-33-7b068216688f> in <module>()
  4 
  5 out = tree.export_graphviz(clf, out_file=out)
 ---->  6 print out.getvalue()

 AttributeError: 'NoneType' object has no attribute 'getvalue'

我该如何解决这个问题?

【问题讨论】:

标签: python scikit-learn decision-tree


【解决方案1】:

sklearn documentation 声明 export_graphviz 返回一个字符串,它确实这样做了

仅当out_fileNone

但是,您的代码存在更多问题。由于export_graphviz 返回一个字符串,一旦你将它分配给out,你就不再有StringIO 对象,而是一个str 对象。要将返回值保存到StringIO 对象,请不要提供out_file,并保存到out,如下所示:

print >>out, tree.export_graphviz(clf)

既然您写了from StringIO import StringIO,我假设您使用的是 Python 2.x。

【讨论】:

    猜你喜欢
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 2020-08-17
    • 2010-10-07
    • 2020-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多