如何解析属性错误:模块';图形。后端没有属性';编码'; [英] how to resolve AttributeError: module 'graphviz.backend' has no attribute 'ENCODING'
本文介绍了如何解析属性错误:模块';图形。后端没有属性';编码';的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我不确定为什么当我尝试将回归树导出到Graphviz时得到AttributeError: module 'graphviz.backend' has no attribute 'ENCODING'
。我试着重新安装了GRAPHVIZ和SLEARN,但没有解决问题。感谢您在这方面的任何建议。
AttributeError Traceback (most recent call last)
<ipython-input-4-9d9e0becf9b6> in <module>
3 # graphviz is the drawing tool
4 from sklearn.tree import export_graphviz
----> 5 import graphviz
6 dot_data = export_graphviz(
7 model,
C:ProgramDataAnaconda3libsite-packagesgraphviz\__init__.py in <module>
25 """
26
---> 27 from .dot import Graph, Digraph
28 from .files import Source
29 from .lang import escape, nohtml
C:ProgramDataAnaconda3libsite-packagesgraphvizdot.py in <module>
30
31 from . import backend
---> 32 from . import files
33 from . import lang
34
C:ProgramDataAnaconda3libsite-packagesgraphvizfiles.py in <module>
20
21
---> 22 class Base(object):
23
24 _engine = 'dot'
C:ProgramDataAnaconda3libsite-packagesgraphvizfiles.py in Base()
26 _format = 'pdf'
27
---> 28 _encoding = backend.ENCODING
29
30 @property
AttributeError: module 'graphviz.backend' has no attribute 'ENCODING'
推荐答案
我在使用pipdeptree
时遇到了类似的问题。似乎有一个very recent changetographviz
,意在混淆其内部。引用issue #149中模块作者的回复(backend.FORMATS
也有类似问题):
的子模块不是公共API的一部分(参见https://graphviz.readthedocs.io/en/stable/api.html)。请坚持使用文档界面并使用图形。有关详细信息,请参阅https://graphviz.readthedocs.io/en/stable/api.html#graphviz.FORMATS)。短期内,您可以将
graphviz
模块…降级看起来0.18
是子模块不透明之前的最后一个标记。
继续,您可能希望针对sklearn-pandas
存储库创建问题和/或拉入请求,将graphviz.backend.FORMATS
替换为graphviz.FORMATS
,甚至将其graphviz
依赖项限制为0.18
。
这篇关于如何解析属性错误:模块';图形。后端没有属性';编码';的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文