第1章 Python概述及使用 1 1.1 Python的特点 2 1.2 下载与安装Python 4 1.2.1 下载Python 4 1.2.2 安装Python 5 1.2.3 查看Python版本 6 1.3 Python程序运行 7 1.3.1 在控制台窗口中运行 7 1.3.2 文件方式运行 8 1.3.3 在终端窗口中运行 9 1.4 CSV文件 10 1.4.1 CSV文件的建立 10 1.4.2 CSV文件的打开 12 1.5 Python包与模块 12 1.5.1 Python包与模块简介 12 1.5.2 模块的调用 13 1.5.3 Python包与模块的建立 13 本章小结 14 习题 14 第2章 Python特色数据类型与 常用函数 16 2.1 Python基础语法 17 2.1.1 标识符与保留字 17 2.1.2 注释 18 2.2 元组数据类型 19 2.3 列表、字典、集合数据类型 20 2.3.1 列表 20 2.3.2 字典 22 2.3.3 集合 23 2.4 数字、字符串数据类型 24 2.4.1 数字 24 2.4.2 字符串 25 2.5 Python的常用函数 27 2.5.1 range()函数 27 2.5.2 enumerate()函数 28 2.5.3 zip()函数 28 2.5.4 map()函数 29 2.5.5 sorted()函数 29 2.5.6 hash()函数 30 2.5.7 reversed()函数 30 本章小结 30 习题 31 第3章 Python语句控制及函数定义 33 3.1 Python分支结构 34 3.1.1 单分支结构 34 3.1.2 多分支结构 35 3.1.3 多分支选择结构 36 3.2 Python循环结构 38 3.2.1 for循环结构 39 3.2.2 while循环结构 40 3.2.3 break与continue 40 3.3 Python函数 43 3.3.1 自定义函数 43 3.3.2 函数的参数 44 3.3.3 递归函数 47 3.3.4 匿名函数 49 3.3.5 将函数存储在模块中 49 3.3.6 Python内置函数 51 本章小结 54 习题 54 第4章 Python类、异常处理、文件 57 4.1 Python类 58 4.1.1 类 58 4.1.2 类私有属性、公有属性 61 4.1.3 类方法 65 4.1.4 类的继承 66 4.1.5 多重继承 67 4.1.6 Object类 68 4.1.7 封装、继承、多态 69 4.1.8 类的浅拷贝与深拷贝 71 4.2 Python异常 74 4.2.1 异常概念 74 4.2.2 异常处理函数 77 4.2.3 trackback模块 79 4.3 Python文件操作 80 4.3.1 文件的概念 80 4.3.2 文件操作 80 本章小结 85 习题 85 第5章 Python数据处理与绘图 89 5.1 numpy数组使用 90 5.1.1 numpy生成数组 91 5.1.2 numpy数组属性 94 5.1.3 数组的索引和切片 96 5.1.4 numpy数组运算 97 5.2 scipy包的使用 101 5.2.1 scipy包中的模块 101 5.2.2 常数模块的使用 102 5.2.3 特殊函数模块的使用 102 5.2.4 信号处理模块 103 5.2.5 空间结构模块 108 5.3 pandas包的使用 109 5.3.1 pandas数组 109 5.3.2 查看数据 112 5.3.3 pandas读取文件 113 5.4 matplotlib包的使用 116 5.5 SQLite数据库的使用 121 5.5.1 SQLite数据库 121 5.5.2 SQLite数据库操作方法 122 5.5.3 SQLite点命令 123 5.5.4 SQLite可视化维护 124 本章小结 126 习题 126 第6章 图形用户界面设计、二维码与 程序打包 130 6.1 图形用户界面设计 131 6.1.1 wxPython应用程序框架 132 6.1.2 wx.Frame的使用 134 6.1.3 文本编辑器 135 6.1.4 wxPython操作窗口 138 6.2 Python二维码设计 145 6.2.1 二维码概念 145 6.2.2 二维码设计 146 6.3 程序打包 147 6.3.1 安装打包工具 147 6.3.2 打包步骤 147 本章小结 150 习题 150 第7章 Anaconda使用、数据分割与 训练 155 7.1 Anaconda安装与使用 156 7.1.1 安装Anaconda 156 7.1.2 使用Anaconda 158 7.2 Jupyter Notebook 160 7.2.1 使用Jupyter Notebook 160 7.2.2 安装mglearn包 163 7.3 数据构建与分割 164 7.3.1 数据构建 164 7.3.2 测试数据分割 167 7.4 k近邻分类 169 7.4.1 k近邻分类算法概述 169 7.4.2 数据模型优良评判 170 7.5 sklearn自带数据集 171 本章小结 174 习题 174 第8章 有监督机器学习 177 8.1 分类与回归 178 8.1.1 分类与回归 178 8.1.2 两个接地特征的线性回归 分析 183 8.1.3 两个接地特征的k近邻分类与 回归 191 8.2 决策树和随机森林 194 8.2.1 决策树 194 8.2.2 随机森林 198 8.3 神经网络分类 201 8.3.1 神经网络算法 201 8.3.2 多层前馈网络结构 201 8.3.3 BP学习算法 202 8.3.4 单相接地神经网络分类 204 8.3.5 神经网络分类器主要参数 206 8.4 集成学习 208 8.4.1 核—SVM算法 208 8.4.2 集成学习算法 209 8.4.3 弱学习机分类器算法 212 8.4.4 分类器不确定性估计 214 8.4.5 机器学习算法汇总 214 本章小结 223 习题 223 第9章 无监督学习与模型泛化 226 9.1 无监督学习 227 9.1.1 k-均值聚类算法 227 9.1.2 新型传染病聚类分析 228 9.1.3 机器学习模型保存 230 9.1.4 高斯混合模型 232 9.1.5 层次聚类 235 9.2 分类模型泛化 236 9.2.1 数据划分有效性 236 9.2.2 更有效数据划分 238 9.2.3 模型参数优化 239 9.2.4 主成分分析 242 9.2.5 流形学习 247 本章小结 248 习题 248 附录A 251 附录B 252 参考文献 253