首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >NameError:未定义名称'pydotplus‘

NameError:未定义名称'pydotplus‘
EN

Stack Overflow用户
提问于 2020-08-24 23:35:46
回答 2查看 1.2K关注 0票数 1

我使用Anaconda和Jupyter Notebook,得到以下错误:

代码语言:javascript
运行
复制
NameError: name 'pydotplus' is not defined

在为python3机器学习决策树运行以下代码时:

代码语言:javascript
运行
复制
import pandas
from sklearn import tree
import pydotplus
from sklearn.tree import DecisionTreeClassifier
import matplotlib.pyplot as plt
import matplotlib.image as pltimg

df = pandas.read_csv("shows.csv")

d = {'UK': 0, 'USA': 1, 'N': 2}
df['Nationality'] = df['Nationality'].map(d)
d = {'YES': 1, 'NO': 0}
df['Go'] = df['Go'].map(d)

features = ['Age', 'Experience', 'Rank', 'Nationality']

X = df[features]
y = df['Go']

dtree = DecisionTreeClassifier()
dtree = dtree.fit(X, y)
data = tree.export_graphviz(dtree, out_file=None, feature_names=features)
graph = pydotplus.graph_from_dot_data(data)
graph.write_png('mydecisiontree.png')

img=pltimg.imread('mydecisiontree.png')
imgplot = plt.imshow(img)
plt.show()
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-24 23:55:23

您是否尝试过从pydotplus导入所需的特定方法?

Like:from pydotplus import graph_from_dot_data,因为您只使用了模块中的一个方法。

票数 3
EN

Stack Overflow用户

发布于 2020-08-25 00:03:35

我能够实现所选答案中提供的解决方案:

代码语言:javascript
运行
复制
import pydotplus # <----------------------- LOOK HERE
dtree = DecisionTreeClassifier()
dtree = dtree.fit(X, y)
data = tree.export_graphviz(dtree, out_file=None, feature_names=features)
graph = pydotplus.graph_from_dot_data(data) # <-------- LOOK HERE
graph.write_png('mydecisiontree.png')

img=pltimg.imread('mydecisiontree.png')
imgplot = plt.imshow(img)
plt.show()

我可以在Anaconda解决我的问题,但后来我去了kaggle,却无法在那里工作。我改为实现导入graphiz,并且根本不再使用pydotplus。

代码语言:javascript
运行
复制
import graphviz
dtree = tree.DecisionTreeClassifier(random_state = 1,max_depth = 5,min_samples_split=2)
dtree = dtree.fit(X, y)
data = tree.export_graphviz(dtree,feature_names=features,out_file=None)
graph = graphviz.Source(data)
graph
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63564183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档