我需要在Databricks中的dtreeviz中可视化决策树。代码似乎运行良好。但是,它没有显示决策树,而是抛出以下内容:
Out23:
运行以下代码:
import pandas as pd
from sklearn import preprocessing, tree
from dtreeviz.trees import dtreeviz
Things = {'Feature01': [3,4,5,0],
'Feature02': [4,5,6,0],
'Feature03': [1,2,3,8],
'Target01': ['Red','Blue','Teal','Red']}
df = pd.DataFrame(Things,
columns= ['Feature01', 'Feature02',
'Feature02', 'Target01'])
label_encoder = preprocessing.LabelEncoder()
label_encoder.fit(df.Target01)
df['target'] = label_encoder.transform(df.Target01)
classifier = tree.DecisionTreeClassifier()
classifier.fit(df.iloc[:,:3], df.target)
dtreeviz(classifier,
df.iloc[:,:3],
df.target,
target_name='toy',
feature_names=df.columns[0:3],
class_names=list(label_encoder.classes_)
)发布于 2021-12-06 07:21:33
如果您查看dtreeviz文档,您将看到dtreeviz方法只创建一个对象,然后需要使用类似于.view()的函数来显示它。在Databricks上,view不能工作,但是您可以使用.svg()方法作为SVG生成输出,然后使用displayHTML函数来显示它。以下代码:
viz = dtreeviz(classifier,
...)
displayHTML(viz.svg())将提供所需的输出:

您需要使用dot命令行工具来生成输出。它可以通过在笔记本的单元格中执行来安装:
%sh apt-get install -y graphvizhttps://stackoverflow.com/questions/70241107
复制相似问题