Огромная проблема для отображения дерева решений в Jupyter Notebook в Python: ExecutableNotFound? - PullRequest
0 голосов
/ 07 марта 2020

У меня проблема с созданием и отображением дерева решений в Jupyter Notebook с использованием Python. Мой код выглядит следующим образом:

X = data.drop(["Risk"], axis=1)
y = data["Risk"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
from sklearn.tree import DecisionTreeClassifier
klasyfikator = DecisionTreeClassifier(criterion = "gini", random_state=0, max_depth=4, min_samples_leaf=1)
klasyfikator.fit(X = X, y = y)


data = export_graphviz(klasyfikator,out_file=None,feature_names=X.columns,class_names=["0", "1"],   
                         filled=True, rounded=True,  
                         special_characters=True)
graph = graphviz.Source(data)
graph

Как правило, это дерево решений касается исследования кредитного риска 0 - не будет платить 1 - будет платить.

Когда я использую код выше, у меня возникает ошибка, подобная этой :

ExecutableNotFound: не удалось выполнить ['dot', '-Tsvg'], убедитесь, что исполняемые файлы Graphviz в вашей системе 'PATH

Я уже пробовал множество решений от StackOverflow, например:

  1. pip install graphviz
  2. Conta install graphiz
  3. I Загруженный Graphviz с http://www.graphviz.org/download/
  4. Я добавил в переменную среды PATH:

C: \ Program Files (x86) \ Graphviz2.38 \ bin

И все еще есть ошибка, описанная выше , Что я могу сделать? что мне делать ? Пожалуйста, помогите мне, ребята, потому что я теряю надежду на то, что смогу нарисовать это дерево. Спасибо!

Более того, когда я добавил с помощью этого кода:

import os 
os.environ["PATH"] += os.pathsep + 'C:\Program Files (x86)\Graphviz2.38\bin' 

У меня в PATH что-то вроде этого: C:\\Program Files (x86)\\Graphviz2.38\x08in это не то же самое, что я могу сделать?

1 Ответ

0 голосов
/ 09 марта 2020

В последней версии sklearn вы можете напрямую построить дерево решений без graphviz.

Использование:

from sklearn.tree import plot_tree

plot_tree(klasyfikator) 

Подробнее здесь .

...