Как рисовать графвиз с ноутбуком Jupyter? - PullRequest
0 голосов
/ 06 июня 2018

Здравствуйте, я сейчас изучаю машинное обучение для класса.

Я хочу визуализировать дерево с помощью graphviz от jupyter notebook.

Ниже приведены ошибки, которые у меня есть:

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
c:\users\asuspc\appdata\local\programs\python\python36-32\lib\site-packages\sklearn\utils\__init__.py in __getattr__(self, key)
     60         try:
---> 61             return self[key]
     62         except KeyError:

KeyError: 'dot'

During handling of the above exception, another exception occurred:

AttributeError                            Traceback (most recent call last)
<ipython-input-17-341e4ee6fe08> in <module>()
      4 from sklearn.tree import export_graphviz
      5 from sklearn.datasets import load_iris
----> 6 dot_data = tree.export_graphviz(clf, out_file=iris.dot)
      7 graph = graphviz.Source(dot_data)
      8 graph.render("iris")

c:\users\asuspc\appdata\local\programs\python\python36-32\lib\site-packages\sklearn\utils\__init__.py in __getattr__(self, key)
     61             return self[key]
     62         except KeyError:
---> 63             raise AttributeError(key)
     64 
     65     def __setstate__(self, state):

AttributeError: dot

И вот код, над которым я сейчас работаю:

import graphviz
import pydotplus
from sklearn import tree
from sklearn.tree import export_graphviz
from sklearn.datasets import load_iris
dot_data = tree.export_graphviz(clf, out_file=iris.dot) 
graph = graphviz.Source(dot_data) 
graph.render("iris") 

Уже установлены необходимые компоненты для ноутбука Jupyter.

Не знаю почемуи как решить keyError или Attribute Errors.

Как я могу решить эту проблему?

1 Ответ

0 голосов
/ 06 июня 2018
Предполагая, что clf является деревом решений
export_graphviz(clf,
                feature_names=X.columns,
                filled=True,
                rounded=True)
, следующий шаг - установите окно graph viz и убедитесь, что dot.exe находится в пути, чтобы #### вы могли получить к нему доступ из windows cmd.
os.system('dot -Tpng tree.dot -o tree.png')

Выше следует сохранить файл точек как png

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...