python调用scikit-learn库画出决策树的图结构

1973Spring 2016-12-14 07:59:40
大神们,调sklearn库画出自带数据集的决策树图结构的代码中出现以下的问题,查了之后没找到相关资料,能赐教下不,非常感谢

if __name__ == '__main__':
iris = load_iris()
exampleList=iris.data
labelList=iris.target
clf=tree.DecisionTreeClassifier()
mytree=clf.fit(exampleList, labelList)
dot_data = StringIO()
tree.export_graphviz(mytree, out_file=dot_data)
graph= pydot.graph_from_dot_data(dot_data.getvalue())
graph.write_png('iris_simple.png')

为什么最后一行“graph.write_png('iris_simple.png')”报错说AttributeError: 'list' object has no attribute 'write_png,graph返回是一个list,我改为graph[0].write_png('iris_simple.png'),又报Exception: "dot.exe" not found in path.
...全文
958 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
python数据分析/(印尼)伊德里斯(Idris.I.)著,韩波译。 资源包括所有章节的示例代码。需要用到python2和pip。 编辑推荐 实用的Python开源模块的大集合; 简单易懂、示例丰富的数据分析教程; 掌握数据可视化、机器学习等高端主题; 新手变身数据分析专家的上好读本; 媒体推荐 本书从一系列开源的Python模块讲起,介绍了很多实用的有关数据检索、清晰、操作、可视化等知识。同时,还涉及信号处理、预测性分析、机器学习等高端主题。非常适合想要深入学习并使用Python进行数据分析的读者,无论是新手还是有一定Python使用基础的读者,都将快速成为一名数据分析专家。 作者简介 Ivan Idris,实验物理学硕士,学位论文侧重于应用计算机科学。毕业后,他曾经效力于多家公司,从事Java开发、数据仓库开发以及QA分析等方面的工作;目前,他的兴趣主要集中在商业智能、大数据和云计算等专业领域。 Ivan Idris以编写简洁可测试的程序代码以及撰写有趣的技术文章为乐,同时也是Packt版社NumPy Beginner's Guide-Second Edition、NumPy Cookbook和Learning NumPy Array等书籍的作者。读者可以访问ivanidris.net获取更多关于他的信息。 目录 目录 第 1章 Python程序库入门 1 1.1 本书用到的软件 2 1.1.1 软件的安装和设置 2 1.1.2 Windows平台 2 1.1.3 Linux平台 3 1.1.4 Mac OS X平台 4 1.2 从源代码安装NumPy、SciPy、matplotlib和IPython 6 1.3 用setuptools安装 7 1.4 NumPy数组 7 1.5 一个简单的应用 8 1.6 将IPython用作shell 11 1.7 学习手册页 13 1.8 IPython notebook 14 1.9 从何处寻求帮助和参考资料 14 1.10 小结 15 第 2章 NumPy数组 16 2.1 NumPy数组对象 16 2.2 创建多维数组 18 2.3 选择NumPy数组元素 18 2.4 NumPy的数值类型 19 2.4.1 数据类型对象 21 2.4.2 字符码 21 2.4.3 Dtype构造函数 22 2.4.4 dtype属性 23 2.5 一维数组的切片与索引 23 2.6 处理数组形状 24 2.6.1 堆叠数组 27 2.6.2 拆分NumPy数组 30 2.6.3 NumPy数组的属性 33 2.6.4 数组的转换 39 2.7 创建数组的视和拷贝 40 2.8 花式索引 41 2.9 基于位置列表的索引方法 43 2.10 用布尔型变量索引NumPy数组 44 2.11 NumPy数组的广播 46 2.12 小结 49 第3章 统计学与线性代数 50 3.1 Numpy和Scipy模块 50 3.2 用NumPy进行简单的描述性统计计算 55 3.3 用NumPy进行线性代数运算 57 3.3.1 用NumPy求矩阵的逆 57 3.3.2 用NumPy解线性方程组 59 3.4 用NumPy计算特征值和特征向量 61 3.5 NumPy随机数 63 3.5.1 用二项式分布进行博弈 63 3.5.2 正态分布采样 66 3.5.3 用SciPy进行正态检验 67 3.6 创建掩码式NumPy数组 70 3.7 小结 75 第4章 pandas入门 76 4.1 pandas的安装与概览 77 4.2 pandas数据结构之DataFrame 78 4.3 pandas数据结构之Series 81 4.4 利用pandas查询数据 85 4.5 利用pandas的DataFrame进行统计计算 89 4.6 利用pandas的DataFrame实现数据聚合 91 4.7 DataFrame的串联与附加操作 95 4.8 连接DataFrames 96 4.9 处理缺失数据问题 99 4.10 处理日期数据 102 4.11 数据透视表 106 4.12 访问远程数据 107 4.13 小结 109 第5章 数据的检索、加工与存储 110 5.1 利用NumPy和pandas对CSV文件进行写操作 110 5.2 NumPy.npy与pandas DataFrame 112 5.3 使用PyTables存储数据 115 5.4 Pandas DataFrame与HDF5仓库之间的读写操作 118 5.5 使用pandas读写Excel文件 120 5.6 使用REST Web服务和JSON 123 5.7 使用pandas读写JSON 124 5.8 解析RSS和Atom订阅 126 5.9 使用Beautiful Soup解析HTML 127 5.10 小结 134 第6章 数据可视化 136 6.1 matplotlib的子库 137 6.2 matplotlib绘入门 137 6.3 对数 139 6.4 散点 141 6.5 例和注解 143 6.6 三维 145 6.7 pandas绘 148 6.8 时滞 150 6.9 自相关 151 6.10 Plot.ly 153 6.11 小结 155 第7章 信号处理与时间序列 156 7.1 statsmodels子库 157 7.2 移动平均值 157 7.3 窗口函数 159 7.4 协整的定义 161 7.5 自相关 164 7.6 自回归模型 166 7.7 ARMA模型 170 7.8 生成周期信号 172 7.9 傅里叶分析 174 7.10 谱分析 177 7.11 滤波 177 7.12 小结 179 第8章 应用数据库 180 8.1 基于sqlite3的轻量级访问 181 8.2 通过pandas访问数据库 183 8.3 SQLAlchemy 185 8.3.1 SQLAlchemy的安装和配置 186 8.3.2 通过SQLAlchemy填充数据库 188 8.3.3 通过SQLAlchemy查询数据库 189 8.4 Pony ORM 191 8.5 Dataset:懒人数据库 192 8.6 PyMongo与MongoDB 195 8.7 利用Redis存储数据 196 8.8 Apache Cassandra 197 8.9 小结 201 第9章 分析文本数据和社交媒体 203 9.1 安装NLTK 203 9.2 滤除停用字、姓名和数字 206 9.3 词袋模型 208 9.4 词频分析 209 9.5 朴素贝叶斯分类 211 9.6 情感分析 214 9.7 创建词云 217 9.8 社交网络分析 222 9.9 小结 224 第 10章 预测性分析与机器学习 225 10.1 scikit-learn概貌 226 10.2 预处理 228 10.3 基于逻辑回归的分类 230 10.4 基于支持向量机的分类 232 10.5 基于ElasticNetCV的回归分析 235 10.6 支持向量回归 237 10.7 基于相似性传播算法的聚类分析 240 10.8 均值漂移算法 242 10.9 遗传算法 244 10.10 神经网络 249 10.11 决策树 251 10.12 小结 253 第 11章 Python生态系统的外部环境和云计算 255 11.1 与MATLAB/Octave交换信息 256 11.2 Installing rpy2安装rpy2 257 11.3 连接R 257 11.4 为Java传递NumPy数组 260 11.5 集成SWIG和NumPy 261 11.6 集成Boost和Python 264 11.7 通过f2py使用Fortran代码 266 11.8 配置谷歌应用引擎 267 11.9 在PythonAnywhere上运行程序 269 11.10 使用Wakari 270 11.11 小结 271 第 12章 性能优化、性能分析与并发性 272 12.1 代码的性能分析 272 12.2 安装Cython 277 12.3 调用C代码 281 12.4 利用multiprocessing创建进程池 283 12.5 通过Joblib提高for循环的并发性 286 12.6 比较Bottleneck函数与NumPy函数 287 12.7 通过Jug实现MapReduce 289 12.8 安装MPI for Python 292 12.9 IPython Parallel 292 12.10 小结 296 附录A 重要概念 298 附录B 常用函数 303 附录C 在线资源 309

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧