हैलो, मैं अब कक्षा के लिए मशीन लर्निंग सीख रहा हूँ।

मैं ज्यूपिटर नोटबुक द्वारा ग्राफविज़ के साथ पेड़ की कल्पना करना चाहता हूं।

ये त्रुटियां हैं जो मेरे पास नीचे हैं:

---------------------------------------------------------------------------
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") 

ज्यूपिटर नोटबुक के लिए पूर्वापेक्षाएँ पहले से ही स्थापित हैं।

मुझे नहीं पता कि keyError या विशेषता त्रुटियों को क्यों और कैसे हल किया जाए।

इसे कैसे हल किया जा सकता है?

0
박창현 6 जून 2018, 11:06

1 उत्तर

सबसे बढ़िया उत्तर

मान लें कि clf एक निर्णय वृक्ष है

export_graphviz(clf,
                feature_names=X.columns,
                filled=True,
                rounded=True)
os.system('dot -Tpng tree.dot -o tree.png')

ऊपर आपकी डॉट फ़ाइल को png के रूप में सहेजना चाहिए

1
Akshay 6 जून 2018, 11:24