안녕하세요 저는이 코드를 발견했으며 의사 결정 트리를 그려보고 있습니다.하지만이 "visualize_tree (test, columns)"는 오류가 발생합니다.이 코드는 난 단지 매우 마지막 줄이 나에게 오류를 제공 말했듯이결정 트리를 파이썬으로 그릴
from __future__ import print_function
import os
import subprocess
import pandas as pd
import numpy as np
from sklearn.tree import DecisionTreeClassifier, export_graphviz
y = test["churn"]
X = test[columns]
dt = DecisionTreeClassifier(min_samples_split=20, random_state=99)
dt.fit(X, y)
def visualize_tree(tree, feature_names):
"""Create tree png using graphviz.
Args
----
tree -- scikit-learn DecsisionTree.
feature_names -- list of feature names.
"""
with open("dt.dot", 'w') as f:
export_graphviz(tree, out_file=f,
feature_names=feature_names)
command = ["dot", "-Tpng", "dt.dot", "-o", "dt.png"]
try:
subprocess.check_call(command)
except:
exit("Could not run dot, ie graphviz, to "
"produce visualization")
visualize_tree(test,columns)
는 :
In[471]: visualize_tree(test,columns)
Traceback (most recent call last):
File "C:\Anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3066, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-471-ccc62a7b61d9>", line 1, in <module>
visualize_tree(test,columns)
File "<ipython-input-470-be9bd10e9f84>", line 81, in visualize_tree
feature_names=feature_names)
File "C:\Anaconda\lib\site-packages\sklearn\tree\export.py", line 403, in export_graphviz
recurse(decision_tree.tree_, 0, criterion=decision_tree.criterion)
File "C:\Anaconda\lib\site-packages\pandas\core\generic.py", line 2360, in __getattr__
(type(self).__name__, name))
AttributeError: 'DataFrame' object has no attribute 'tree_'
스택 추적을 추가 할 수 있습니까? (가장 최근의 마지막 호출) : 파일 "C : \ lib \ site-packages \ IPython \ core \ interactiveshell.py"3066 행의 원본 파일에 –
이 완료되었습니다.이 경우 오류 – progster