Python数据科学手册

Python数据科学手册
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] (Jake VanderPlas) , ,
2018-02
版次: 1
ISBN: 9787115475893
定价: 109.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 448页
正文语种: 简体中文
493人买过
  • 《Python数据科学手册》是对以数据深度需求为中心的科学、研究以及针对计算和统计方法的参考书。本书共五章,每章介绍一到两个Python数据科学中的重点工具包。首先从IPython和Jupyter开始,它们提供了数据科学家需要的计算环境;第 2章讲解能提供ndarray对象的NumPy,它可以用Python高效地存储和操作大型数组;第3章主要涉及提供DataFrame对象的Pandas,它可以用Python高效地存储和操作带标签的/列式数据;第4章的主角是Matplotlib,它为Python提供了许多数据可视化功能;第5章以Scikit-Learn为主,这个程序库为重要的机器学习算法提供了高效整洁的Python版实现。 

    《Python数据科学手册》适合有编程背景,并打算将开源Python工具用作分析、操作、可视化以及学习数据的数据科学研究人员。 Jake VanderPlas是Python科学栈的深度用户和开发人员,目前是华盛顿大学eScience学院物理科学研究院院长,研究方向为天文学。同时,他还为很多领域的科学家提供建议和咨询。 译者序 xiii 

    前言 xv 

    第 1 章 IPython:超越Python 1 

    1.1 shell还是Notebook 1 

    1.1.1 启动IPython shell 2 

    1.1.2 启动Jupyter Notebook 2 

    1.2 IPython的帮助和文档 3 

    1.2.1 用符号 获取文档 3 

    1.2.2 通过符号 获取源代码 4 

    1.2.3 用Tab补全的方式探索模块 5 

    1.3 IPython shell中的快捷键 7 

    1.3.1 导航快捷键 7 

    1.3.2 文本输入快捷键 7 

    1.3.3 命令历史快捷键 8 

    1.3.4 其他快捷键 9 

    1.4 IPython魔法命令 9 

    1.4.1 粘贴代码块:%paste和%cpaste 9 

    1.4.2 执行外部代码:%run 10 

    1.4.3 计算代码运行时间:%timeit 11 

    1.4.4 魔法函数的帮助: 、%magic 和%lsmagic 11 

    1.5 输入和输出历史 12 

    1.5.1 IPython的输入和输出对象 12 

    1.5.2 下划线快捷键和以前的输出 13 

    1.5.3 禁止输出 13 

    1.5.4 相关的魔法命令 13 

    1.6 IPython和shell命令 14 

    1.6.1 shell快速入门 14 

    1.6.2 IPython中的shell命令 15 

    1.6.3 在shell中传入或传出值 15 

    1.7 与shell相关的魔法命令 16 

    1.8 错误和调试 17 

    1.8.1 控制异常:%xmode 17 

    1.8.2 调试:当阅读轨迹追溯不足以解决问题时 19 

    1.9 代码的分析和计时 21 

    1.9.1 代码段计时:%timeit和%time 22 

    1.9.2 分析整个脚本:%prun 23 

    1.9.3 用%lprun进行逐行分析 24 

    1.9.4 用%memit和%mprun进行内存分析 25 

    1.10 IPython参考资料 26 

    1.10.1 网络资源 26 

    1.10.2 相关图书 27 

    第 2 章 NumPy入门 28 

    2.1 理解Python中的数据类型 29 

    2.1.1 Python整型不仅仅是一个整型 30 

    2.1.2 Python列表不仅仅是一个列表 31 

    2.1.3 Python中的固定类型数组 32 

    2.1.4 从Python列表创建数组 32 

    2.1.5 从头创建数组 33 

    2.1.6 NumPy标准数据类型 34 

    2.2 NumPy数组基础 35 

    2.2.1 NumPy数组的属性 36 

    2.2.2 数组索引:获取单个元素 37 

    2.2.3 数组切片:获取子数组 38 

    2.2.4 数组的变形 41 

    2.2.5 数组拼接和分裂 42 

    2.3 NumPy数组的计算:通用函数 44 

    2.3.1 缓慢的循环 44 

    2.3.2 通用函数介绍 45 

    2.3.3 探索NumPy的通用函数 46 

    2.3.4 通用函数特性 49 

    2.3.5 通用函数:更多的信息 51 

    2.4 聚合:*小值、*大值和其他值 51 

    2.4.1 数组值求和 51 

    2.4.2 *小值和*大值 52 

    2.4.3 示例:美国总统的身高是多少 54 

    2.5 数组的计算:广播 55 

    2.5.1 广播的介绍 55 

    2.5.2 广播的规则 57 

    2.5.3 广播的实际应用 60 

    2.6 比较、掩码和布尔逻辑 61 

    2.6.1 示例:统计下雨天数 61 

    2.6.2 和通用函数类似的比较操作 62 

    2.6.3 操作布尔数组 64 

    2.6.4 将布尔数组作为掩码 66 

    2.7 花哨的索引 69 

    2.7.1 探索花哨的索引 69 

    2.7.2 组合索引 70 

    2.7.3 示例:选择随机点 71 

    2.7.4 用花哨的索引修改值 72 

    2.7.5 示例:数据区间划分 73 

    2.8 数组的排序 75 

    2.8.1 NumPy中的快速排序:np.sort和np.argsort 76 

    2.8.2 部分排序:分隔 77 

    2.8.3 示例:K个*近邻 78 

    2.9 结构化数据:NumPy的结构化数组 81 

    2.9.1 生成结构化数组 83 

    2.9.2 更高 级的复合类型 84 

    2.9.3 记录数组:结构化数组的扭转 84 

    2.9.4 关于Pandas 85 

    第3 章 Pandas数据处理 86 

    3.1 安装并使用Pandas 86 

    3.2 Pandas对象简介 87 

    3.2.1 Pandas的Series对象 87 

    3.2.2 Pandas的DataFrame对象 90 

    3.2.3 Pandas的Index对象 93 

    3.3 数据取值与选择 95 

    3.3.1 Series数据选择方法 95 

    3.3.2 DataFrame数据选择方法 98 

    3.4 Pandas数值运算方法 102 

    3.4.1 通用函数:保留索引 102 

    3.4.2 通用函数:索引对齐 103 

    3.4.3 通用函数:DataFrame与Series的运算 105 

    3.5 处理缺失值 106 

    3.5.1 选择处理缺失值的方法 106 

    3.5.2 Pandas的缺失值 107 

    3.5.3 处理缺失值 110 

    3.6 层级索引 113 

    3.6.1 多级索引Series 113 

    3.6.2 多级索引的创建方法 116 

    3.6.3 多级索引的取值与切片 119 

    3.6.4 多级索引行列转换 121 

    3.6.5 多级索引的数据累计方法 124 

    3.7 合并数据集:Concat与Append操作 125 

    3.7.1 知识回顾:NumPy数组的合并 126 

    3.7.2 通过pd.concat实现简易合并 126 

    3.8 合并数据集:合并与连接 129 

    3.8.1 关系代数 129 

    3.8.2 数据连接的类型 130 

    3.8.3 设置数据合并的键 132 

    3.8.4 设置数据连接的集合操作规则 134 

    3.8.5 重复列名:suffixes参数 135 

    3.8.6 案例:美国各州的统计数据 136 

    3.9 累计与分组 140 

    3.9.1 行星数据 140 

    3.9.2 Pandas的简单累计功能 141 

    3.9.3 GroupBy:分割、应用和组合 142 

    3.10 数据透视表 150 

    3.10.1 演示数据透视表 150 

    3.10.2 手工制作数据透视表 151 

    3.10.3 数据透视表语法 151 

    3.10.4 案例:美国人的生日 153 

    3.11 向量化字符串操作 157 

    3.11.1 Pandas字符串操作简介 157 

    3.11.2 Pandas字符串方法列表 159 

    3.11.3 案例:食谱数据库 163 

    3.12 处理时间序列 166 

    3.12.1 Python的日期与时间工具 166 

    3.12.2 Pandas时间序列:用时间作索引 169 

    3.12.3 Pandas时间序列数据结构 170 

    3.12.4 时间频率与偏移量 172 

    3.12.5 重新取样、迁移和窗口 173 

    3.12.6 更多学习资料 178 

    3.12.7 案例:美国西雅图自行车统计数据的可视化 179 

    3.13 高性能Pandas:eval()与query() 184 

    3.13.1 query()与eval()的设计动机:复合代数式 184 

    3.13.2 用pandas.eval()实现高性能运算 185 

    3.13.3 用DataFrame.eval()实现列间运算 187 

    3.13.4 DataFrame.query()方法 188 

    3.13.5 性能决定使用时机 189 

    3.14 参考资料 189 

    第4 章 Matplotlib数据可视化 191 

    4.1 Matplotlib常用技巧 192 

    4.1.1 导入Matplotlib 192 

    4.1.2 设置绘图样式 192 

    4.1.3 用不用show()?如何显示图形 192 

    4.1.4 将图形保存为文件 194 

    4.2 两种画图接口 195 

    4.2.1 MATLAB风格接口 195 

    4.2.2 面向对象接口 196 

    4.3 简易线形图 197 

    4.3.1 调整图形:线条的颜色与风格 199 

    4.3.2 调整图形:坐标轴上下限 200 

    4.3.3 设置图形标签 203 

    4.4 简易散点图 204 

    4.4.1 用plt.plot画散点图 205 

    4.4.2 用plt.scatter画散点图 206 

    4.4.3 plot与scatter:效率对比 208 

    4.5 可视化异常处理 208 

    4.5.1 基本误差线 209 

    4.5.2 连续误差 210 

    4.6 密度图与等高线图 211 

    4.7 频次直方图、数据区间划分和分布密度 215 

    4.8 配置图例 219 

    4.8.1 选择图例显示的元素 221 

    4.8.2 在图例中显示不同尺寸的点 222 

    4.8.3 同时显示多个图例 223 

    4.9 配置颜色条 224 

    4.9.1 配置颜色条 224 

    4.9.2 案例:手写数字 228 

    4.10 多子图 230 

    4.10.1 plt.axes:手动创建子图 230 

    4.10.2 plt.subplot:简易网格子图 231 

    4.10.3 plt.subplots:用一行代码创建网格 233 

    4.10.4 plt.GridSpec:实现更复杂的排列方式 234 

    4.11 文字与注释 235 

    4.11.1 案例:节假日对美国出生率的影响 236 

    4.11.2 坐标变换与文字位置 237 

    4.11.3 箭头与注释 239 

    4.12 自定义坐标轴刻度 241 

    4.12.1 主要刻度与次要刻度 242 

    4.12.2 隐藏刻度与标签 243 

    4.12.3 增减刻度数量 244 

    4.12.4 花哨的刻度格式 245 

    4.12.5 格式生成器与定位器小结 247 

    4.13 Matplotlib自定义:配置文件与样式表 248 

    4.13.1 手动配置图形 248 

    4.13.2 修改默认配置:rcParams 249 

    4.13.3 样式表 251 

    4.14 用Matplotlib画三维图 255 

    4.14.1 三维数据点与线 256 

    4.14.2 三维等高线图 256 

    4.14.3 线框图和曲面图 258 

    4.14.4 曲面三角剖分 259 

    4.15 用Basemap可视化地理数据 261 

    4.15.1 地图投影 263 

    4.15.2 画一个地图背景 267 

    4.15.3 在地图上画数据 269 

    4.15.4 案例:美国加州城市数据 270 

    4.15.5 案例:地表温度数据 271 

    4.16 用Seaborn做数据可视化 273 

    4.16.1 Seaborn与Matplotlib 274 

    4.16.2 Seaborn图形介绍 275 

    4.16.3 案例:探索马拉松比赛成绩数据 283 

    4.17 参考资料 290 

    4.17.1 Matplotlib资源 290 

    4.17.2 其他Python画图程序库 290 

    第5 章 机器学习 291 

    5.1 什么是机器学习 291 

    5.1.1 机器学习的分类 292 

    5.1.2 机器学习应用的定性示例 292 

    5.1.3 小结 299 

    5.2 Scikit-Learn简介 300 

    5.2.1 Scikit-Learn的数据表示 300 

    5.2.2 Scikit-Learn的评估器API 302 

    5.2.3 应用:手写数字探索 309 

    5.2.4 小结 313 

    5.3 超参数与模型验证 313 

    5.3.1 什么是模型验证 314 

    5.3.2 选择模型 317 

    5.3.3 学习曲线 322 

    5.3.4 验证实践:网格搜索 326 

    5.3.5 小结 327 

    5.4 特征工程 327 

    5.4.1 分类特征 327 

    5.4.2 文本特征 329 

    5.4.3 图像特征 330 

    5.4.4 衍生特征 330 

    5.4.5 缺失值填充 332 

    5.4.6 特征管道 332 

    5.5 专题:朴素贝叶斯分类 333 

    5.5.1 贝叶斯分类 333 

    5.5.2 高斯朴素贝叶斯 334 

    5.5.3 多项式朴素贝叶斯 336 

    5.5.4 朴素贝叶斯的应用场景 339 

    5.6 专题:线性回归 340 

    5.6.1 简单线性回归 340 

    5.6.2 基函数回归 342 

    5.6.3 正则化 346 

    5.6.4 案例:预测自行车流量 349 

    5.7 专题:支持向量机 353 

    5.7.1 支持向量机的由来 354 

    5.7.2 支持向量机:边界*大化 355 

    5.7.3 案例:人脸识别 363 

    5.7.4 支持向量机总结 366 

    5.8 专题:决策树与随机森林 367 

    5.8.1 随机森林的诱因:决策树 367 

    5.8.2 评估器集成算法:随机森林 371 

    5.8.3 随机森林回归 373 

    5.8.4 案例:用随机森林识别手写数字 374 

    5.8.5 随机森林总结 376 

    5.9 专题:主成分分析 376 

    5.9.1 主成分分析简介 377 

    5.9.2 用PCA作噪音过滤 383 

    5.9.3 案例:特征脸 385 

    5.9.4 主成分分析总结 387 

    5.10 专题:流形学习 388 

    5.10.1 流形学习:“HELLO” 388 

    5.10.2 多维标度法(MDS) 389 

    5.10.3 将MDS用于流形学习 391 

    5.10.4 非线性嵌入:当MDS失败时 393 

    5.10.5 非线性流形:局部线性嵌入 395 

    5.10.6 关于流形方法的一些思考 396 

    5.10.7 示例:用Isomap 处理人脸数据 397 

    5.10.8 示例:手写数字的可视化结构 400 

    5.11 专题:k-means聚类 402 

    5.11.1 k-means简介 403 

    5.11.2 k-means算法:期望*大化 404 

    5.11.3 案例 409 

    5.12 专题:高斯混合模型 415 

    5.12.1 高斯混合模型(GMM)为什么会出现:k-means算法 

    的缺陷 415 

    5.12.2 一般化E-M:高斯混合模型 417 

    5.12.3 将GMM用作密度估计 421 

    5.12.4 示例:用GMM生成新的数据 425 

    5.13 专题:核密度估计 427 

    5.13.1 KDE的由来:直方图 428 

    5.13.2 核密度估计的实际应用 431 

    5.13.3 示例:球形空间的KDE 433 

    5.13.4 示例:不是很朴素的贝叶斯 436 

    5.14 应用:人脸识别管道 439 

    5.14.1 HOG特征 440 

    5.14.2 HOG实战:简单人脸识别器 441 

    5.14.3 注意事项与改进方案 445 

    5.15 机器学习参考资料 446 

    5.15.1 Python中的机器学习 446 

    5.15.2 通用机器学习资源 447 

    关于作者 448 

    关于封面 448
  • 内容简介:
    《Python数据科学手册》是对以数据深度需求为中心的科学、研究以及针对计算和统计方法的参考书。本书共五章,每章介绍一到两个Python数据科学中的重点工具包。首先从IPython和Jupyter开始,它们提供了数据科学家需要的计算环境;第 2章讲解能提供ndarray对象的NumPy,它可以用Python高效地存储和操作大型数组;第3章主要涉及提供DataFrame对象的Pandas,它可以用Python高效地存储和操作带标签的/列式数据;第4章的主角是Matplotlib,它为Python提供了许多数据可视化功能;第5章以Scikit-Learn为主,这个程序库为重要的机器学习算法提供了高效整洁的Python版实现。 

    《Python数据科学手册》适合有编程背景,并打算将开源Python工具用作分析、操作、可视化以及学习数据的数据科学研究人员。
  • 作者简介:
    Jake VanderPlas是Python科学栈的深度用户和开发人员,目前是华盛顿大学eScience学院物理科学研究院院长,研究方向为天文学。同时,他还为很多领域的科学家提供建议和咨询。
  • 目录:
    译者序 xiii 

    前言 xv 

    第 1 章 IPython:超越Python 1 

    1.1 shell还是Notebook 1 

    1.1.1 启动IPython shell 2 

    1.1.2 启动Jupyter Notebook 2 

    1.2 IPython的帮助和文档 3 

    1.2.1 用符号 获取文档 3 

    1.2.2 通过符号 获取源代码 4 

    1.2.3 用Tab补全的方式探索模块 5 

    1.3 IPython shell中的快捷键 7 

    1.3.1 导航快捷键 7 

    1.3.2 文本输入快捷键 7 

    1.3.3 命令历史快捷键 8 

    1.3.4 其他快捷键 9 

    1.4 IPython魔法命令 9 

    1.4.1 粘贴代码块:%paste和%cpaste 9 

    1.4.2 执行外部代码:%run 10 

    1.4.3 计算代码运行时间:%timeit 11 

    1.4.4 魔法函数的帮助: 、%magic 和%lsmagic 11 

    1.5 输入和输出历史 12 

    1.5.1 IPython的输入和输出对象 12 

    1.5.2 下划线快捷键和以前的输出 13 

    1.5.3 禁止输出 13 

    1.5.4 相关的魔法命令 13 

    1.6 IPython和shell命令 14 

    1.6.1 shell快速入门 14 

    1.6.2 IPython中的shell命令 15 

    1.6.3 在shell中传入或传出值 15 

    1.7 与shell相关的魔法命令 16 

    1.8 错误和调试 17 

    1.8.1 控制异常:%xmode 17 

    1.8.2 调试:当阅读轨迹追溯不足以解决问题时 19 

    1.9 代码的分析和计时 21 

    1.9.1 代码段计时:%timeit和%time 22 

    1.9.2 分析整个脚本:%prun 23 

    1.9.3 用%lprun进行逐行分析 24 

    1.9.4 用%memit和%mprun进行内存分析 25 

    1.10 IPython参考资料 26 

    1.10.1 网络资源 26 

    1.10.2 相关图书 27 

    第 2 章 NumPy入门 28 

    2.1 理解Python中的数据类型 29 

    2.1.1 Python整型不仅仅是一个整型 30 

    2.1.2 Python列表不仅仅是一个列表 31 

    2.1.3 Python中的固定类型数组 32 

    2.1.4 从Python列表创建数组 32 

    2.1.5 从头创建数组 33 

    2.1.6 NumPy标准数据类型 34 

    2.2 NumPy数组基础 35 

    2.2.1 NumPy数组的属性 36 

    2.2.2 数组索引:获取单个元素 37 

    2.2.3 数组切片:获取子数组 38 

    2.2.4 数组的变形 41 

    2.2.5 数组拼接和分裂 42 

    2.3 NumPy数组的计算:通用函数 44 

    2.3.1 缓慢的循环 44 

    2.3.2 通用函数介绍 45 

    2.3.3 探索NumPy的通用函数 46 

    2.3.4 通用函数特性 49 

    2.3.5 通用函数:更多的信息 51 

    2.4 聚合:*小值、*大值和其他值 51 

    2.4.1 数组值求和 51 

    2.4.2 *小值和*大值 52 

    2.4.3 示例:美国总统的身高是多少 54 

    2.5 数组的计算:广播 55 

    2.5.1 广播的介绍 55 

    2.5.2 广播的规则 57 

    2.5.3 广播的实际应用 60 

    2.6 比较、掩码和布尔逻辑 61 

    2.6.1 示例:统计下雨天数 61 

    2.6.2 和通用函数类似的比较操作 62 

    2.6.3 操作布尔数组 64 

    2.6.4 将布尔数组作为掩码 66 

    2.7 花哨的索引 69 

    2.7.1 探索花哨的索引 69 

    2.7.2 组合索引 70 

    2.7.3 示例:选择随机点 71 

    2.7.4 用花哨的索引修改值 72 

    2.7.5 示例:数据区间划分 73 

    2.8 数组的排序 75 

    2.8.1 NumPy中的快速排序:np.sort和np.argsort 76 

    2.8.2 部分排序:分隔 77 

    2.8.3 示例:K个*近邻 78 

    2.9 结构化数据:NumPy的结构化数组 81 

    2.9.1 生成结构化数组 83 

    2.9.2 更高 级的复合类型 84 

    2.9.3 记录数组:结构化数组的扭转 84 

    2.9.4 关于Pandas 85 

    第3 章 Pandas数据处理 86 

    3.1 安装并使用Pandas 86 

    3.2 Pandas对象简介 87 

    3.2.1 Pandas的Series对象 87 

    3.2.2 Pandas的DataFrame对象 90 

    3.2.3 Pandas的Index对象 93 

    3.3 数据取值与选择 95 

    3.3.1 Series数据选择方法 95 

    3.3.2 DataFrame数据选择方法 98 

    3.4 Pandas数值运算方法 102 

    3.4.1 通用函数:保留索引 102 

    3.4.2 通用函数:索引对齐 103 

    3.4.3 通用函数:DataFrame与Series的运算 105 

    3.5 处理缺失值 106 

    3.5.1 选择处理缺失值的方法 106 

    3.5.2 Pandas的缺失值 107 

    3.5.3 处理缺失值 110 

    3.6 层级索引 113 

    3.6.1 多级索引Series 113 

    3.6.2 多级索引的创建方法 116 

    3.6.3 多级索引的取值与切片 119 

    3.6.4 多级索引行列转换 121 

    3.6.5 多级索引的数据累计方法 124 

    3.7 合并数据集:Concat与Append操作 125 

    3.7.1 知识回顾:NumPy数组的合并 126 

    3.7.2 通过pd.concat实现简易合并 126 

    3.8 合并数据集:合并与连接 129 

    3.8.1 关系代数 129 

    3.8.2 数据连接的类型 130 

    3.8.3 设置数据合并的键 132 

    3.8.4 设置数据连接的集合操作规则 134 

    3.8.5 重复列名:suffixes参数 135 

    3.8.6 案例:美国各州的统计数据 136 

    3.9 累计与分组 140 

    3.9.1 行星数据 140 

    3.9.2 Pandas的简单累计功能 141 

    3.9.3 GroupBy:分割、应用和组合 142 

    3.10 数据透视表 150 

    3.10.1 演示数据透视表 150 

    3.10.2 手工制作数据透视表 151 

    3.10.3 数据透视表语法 151 

    3.10.4 案例:美国人的生日 153 

    3.11 向量化字符串操作 157 

    3.11.1 Pandas字符串操作简介 157 

    3.11.2 Pandas字符串方法列表 159 

    3.11.3 案例:食谱数据库 163 

    3.12 处理时间序列 166 

    3.12.1 Python的日期与时间工具 166 

    3.12.2 Pandas时间序列:用时间作索引 169 

    3.12.3 Pandas时间序列数据结构 170 

    3.12.4 时间频率与偏移量 172 

    3.12.5 重新取样、迁移和窗口 173 

    3.12.6 更多学习资料 178 

    3.12.7 案例:美国西雅图自行车统计数据的可视化 179 

    3.13 高性能Pandas:eval()与query() 184 

    3.13.1 query()与eval()的设计动机:复合代数式 184 

    3.13.2 用pandas.eval()实现高性能运算 185 

    3.13.3 用DataFrame.eval()实现列间运算 187 

    3.13.4 DataFrame.query()方法 188 

    3.13.5 性能决定使用时机 189 

    3.14 参考资料 189 

    第4 章 Matplotlib数据可视化 191 

    4.1 Matplotlib常用技巧 192 

    4.1.1 导入Matplotlib 192 

    4.1.2 设置绘图样式 192 

    4.1.3 用不用show()?如何显示图形 192 

    4.1.4 将图形保存为文件 194 

    4.2 两种画图接口 195 

    4.2.1 MATLAB风格接口 195 

    4.2.2 面向对象接口 196 

    4.3 简易线形图 197 

    4.3.1 调整图形:线条的颜色与风格 199 

    4.3.2 调整图形:坐标轴上下限 200 

    4.3.3 设置图形标签 203 

    4.4 简易散点图 204 

    4.4.1 用plt.plot画散点图 205 

    4.4.2 用plt.scatter画散点图 206 

    4.4.3 plot与scatter:效率对比 208 

    4.5 可视化异常处理 208 

    4.5.1 基本误差线 209 

    4.5.2 连续误差 210 

    4.6 密度图与等高线图 211 

    4.7 频次直方图、数据区间划分和分布密度 215 

    4.8 配置图例 219 

    4.8.1 选择图例显示的元素 221 

    4.8.2 在图例中显示不同尺寸的点 222 

    4.8.3 同时显示多个图例 223 

    4.9 配置颜色条 224 

    4.9.1 配置颜色条 224 

    4.9.2 案例:手写数字 228 

    4.10 多子图 230 

    4.10.1 plt.axes:手动创建子图 230 

    4.10.2 plt.subplot:简易网格子图 231 

    4.10.3 plt.subplots:用一行代码创建网格 233 

    4.10.4 plt.GridSpec:实现更复杂的排列方式 234 

    4.11 文字与注释 235 

    4.11.1 案例:节假日对美国出生率的影响 236 

    4.11.2 坐标变换与文字位置 237 

    4.11.3 箭头与注释 239 

    4.12 自定义坐标轴刻度 241 

    4.12.1 主要刻度与次要刻度 242 

    4.12.2 隐藏刻度与标签 243 

    4.12.3 增减刻度数量 244 

    4.12.4 花哨的刻度格式 245 

    4.12.5 格式生成器与定位器小结 247 

    4.13 Matplotlib自定义:配置文件与样式表 248 

    4.13.1 手动配置图形 248 

    4.13.2 修改默认配置:rcParams 249 

    4.13.3 样式表 251 

    4.14 用Matplotlib画三维图 255 

    4.14.1 三维数据点与线 256 

    4.14.2 三维等高线图 256 

    4.14.3 线框图和曲面图 258 

    4.14.4 曲面三角剖分 259 

    4.15 用Basemap可视化地理数据 261 

    4.15.1 地图投影 263 

    4.15.2 画一个地图背景 267 

    4.15.3 在地图上画数据 269 

    4.15.4 案例:美国加州城市数据 270 

    4.15.5 案例:地表温度数据 271 

    4.16 用Seaborn做数据可视化 273 

    4.16.1 Seaborn与Matplotlib 274 

    4.16.2 Seaborn图形介绍 275 

    4.16.3 案例:探索马拉松比赛成绩数据 283 

    4.17 参考资料 290 

    4.17.1 Matplotlib资源 290 

    4.17.2 其他Python画图程序库 290 

    第5 章 机器学习 291 

    5.1 什么是机器学习 291 

    5.1.1 机器学习的分类 292 

    5.1.2 机器学习应用的定性示例 292 

    5.1.3 小结 299 

    5.2 Scikit-Learn简介 300 

    5.2.1 Scikit-Learn的数据表示 300 

    5.2.2 Scikit-Learn的评估器API 302 

    5.2.3 应用:手写数字探索 309 

    5.2.4 小结 313 

    5.3 超参数与模型验证 313 

    5.3.1 什么是模型验证 314 

    5.3.2 选择模型 317 

    5.3.3 学习曲线 322 

    5.3.4 验证实践:网格搜索 326 

    5.3.5 小结 327 

    5.4 特征工程 327 

    5.4.1 分类特征 327 

    5.4.2 文本特征 329 

    5.4.3 图像特征 330 

    5.4.4 衍生特征 330 

    5.4.5 缺失值填充 332 

    5.4.6 特征管道 332 

    5.5 专题:朴素贝叶斯分类 333 

    5.5.1 贝叶斯分类 333 

    5.5.2 高斯朴素贝叶斯 334 

    5.5.3 多项式朴素贝叶斯 336 

    5.5.4 朴素贝叶斯的应用场景 339 

    5.6 专题:线性回归 340 

    5.6.1 简单线性回归 340 

    5.6.2 基函数回归 342 

    5.6.3 正则化 346 

    5.6.4 案例:预测自行车流量 349 

    5.7 专题:支持向量机 353 

    5.7.1 支持向量机的由来 354 

    5.7.2 支持向量机:边界*大化 355 

    5.7.3 案例:人脸识别 363 

    5.7.4 支持向量机总结 366 

    5.8 专题:决策树与随机森林 367 

    5.8.1 随机森林的诱因:决策树 367 

    5.8.2 评估器集成算法:随机森林 371 

    5.8.3 随机森林回归 373 

    5.8.4 案例:用随机森林识别手写数字 374 

    5.8.5 随机森林总结 376 

    5.9 专题:主成分分析 376 

    5.9.1 主成分分析简介 377 

    5.9.2 用PCA作噪音过滤 383 

    5.9.3 案例:特征脸 385 

    5.9.4 主成分分析总结 387 

    5.10 专题:流形学习 388 

    5.10.1 流形学习:“HELLO” 388 

    5.10.2 多维标度法(MDS) 389 

    5.10.3 将MDS用于流形学习 391 

    5.10.4 非线性嵌入:当MDS失败时 393 

    5.10.5 非线性流形:局部线性嵌入 395 

    5.10.6 关于流形方法的一些思考 396 

    5.10.7 示例:用Isomap 处理人脸数据 397 

    5.10.8 示例:手写数字的可视化结构 400 

    5.11 专题:k-means聚类 402 

    5.11.1 k-means简介 403 

    5.11.2 k-means算法:期望*大化 404 

    5.11.3 案例 409 

    5.12 专题:高斯混合模型 415 

    5.12.1 高斯混合模型(GMM)为什么会出现:k-means算法 

    的缺陷 415 

    5.12.2 一般化E-M:高斯混合模型 417 

    5.12.3 将GMM用作密度估计 421 

    5.12.4 示例:用GMM生成新的数据 425 

    5.13 专题:核密度估计 427 

    5.13.1 KDE的由来:直方图 428 

    5.13.2 核密度估计的实际应用 431 

    5.13.3 示例:球形空间的KDE 433 

    5.13.4 示例:不是很朴素的贝叶斯 436 

    5.14 应用:人脸识别管道 439 

    5.14.1 HOG特征 440 

    5.14.2 HOG实战:简单人脸识别器 441 

    5.14.3 注意事项与改进方案 445 

    5.15 机器学习参考资料 446 

    5.15.1 Python中的机器学习 446 

    5.15.2 通用机器学习资源 447 

    关于作者 448 

    关于封面 448
查看详情
系列丛书 / 更多
Python数据科学手册
机器学习实战
[美]Peter Harrington 著;李锐、李鹏、曲亚东 译
Python数据科学手册
图灵程序设计丛书:Python基础教程
[挪威]Magnus Lie Hetland 著;司维、曾军崴、谭颖华 译
Python数据科学手册
JavaScript高级程序设计(第3版)
[美]Nicholas C.Zakas 著;李松峰、曹力 译
Python数据科学手册
Python编程:从入门到实践
[美]埃里克·马瑟斯(Eric Matthes) 著;袁国忠 译
Python数据科学手册
R语言实战(第2版)
[美]卡巴科弗(Robert I. Kabacoff) 著;王小宁、刘撷芯、黄俊文 译
Python数据科学手册
算法(第4版)
[美]Robert、[美]Kevin Wayne 著;谢路云 译
Python数据科学手册
大数据:互联网大规模数据挖掘与分布式处理
[美]Anand、[美]Jeffrey David Ullman 著;王斌 译
Python数据科学手册
Spark快速大数据分析
[美]卡劳(Holden Karau)、[美]肯维尼斯科(Andy Konwinski)、[美]温德尔(Patrick Wendell)、[加拿大]扎哈里亚(Matei Zaharia) 著;王道远 译
Python数据科学手册
MySQL必知必会
[英]福塔(Ben Forta) 著;刘晓霞、钟鸣 译
Python数据科学手册
Objective-C基础教程 第2版
[美]Scott、[美]Waqar、[美]Mark Dalrymple 著;周庆成 译
Python数据科学手册
图解HTTP
[日]上野·宣 著;于均良 译
Python数据科学手册
算法图解
袁国忠 译
相关图书 / 更多
Python数据科学手册
Python和PySpark数据分析
(加)乔纳森·里乌
Python数据科学手册
Python机器学习入门与实践 从深度学习到生成对抗网络GAN 深入浅出GAN生成对抗网络 实战gan TensorFlow与Keras 人工智能技术书籍
(日)大关真之
Python数据科学手册
Python语言程序设计
王刚
Python数据科学手册
Python代码编程 学科项目式编程(六年级)
冯建刚
Python数据科学手册
Python机器学习 : 核心技术与开发实战 周志华西瓜书机器学习实战伴侣书
[美]普拉提克·乔希 著;李现伟 译者;颉腾文化 出品;阿尔伯托·阿尔塔桑切斯(美);曾小健
Python数据科学手册
Python语言程序设计(微课版)
宁爱军 何志永
Python数据科学手册
Python数据分析从入门到精通(第2版)
明日科技
Python数据科学手册
Python数据分析与挖掘
齐福利
Python数据科学手册
Python基础与应用(互联网+教育新形态一体化系列教材)
李喆时、谢家立、赵丽 编
Python数据科学手册
Python数据分析与可视化项目实战
王振丽
Python数据科学手册
Python爬虫从菜鸟到高手
李宁
Python数据科学手册
Python程序设计基础教程
\"孙海龙 王济军\
您可能感兴趣 / 更多
Python数据科学手册
孩子,把你的手给我1:怎么说孩子才爱听,怎么教孩子才肯学?帮助每一位3-12岁孩子的父母结束与孩子的所有冲突!
[美]海姆·G.吉诺特
Python数据科学手册
怎样做成大事
[美]丹·加德纳(Dan Gardner) 著;贾拥民 译;湛庐文化 出品;[丹麦]傅以斌(Bent Flyvbjerg)
Python数据科学手册
1200年希腊罗马神话
[美]伊迪丝·汉密尔顿
Python数据科学手册
爱情心理学(新编本)
[美]罗伯特·J. 斯腾伯格 (美)凯琳·斯腾伯格 倪爱萍 译
Python数据科学手册
黄金圈法则
[美]西蒙·斯涅克 著;磨铁文化 出品
Python数据科学手册
汤姆·索亚历险记 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]马克 吐温
Python数据科学手册
富兰克林自传 名家全译本 改变无数人命运的励志传奇 埃隆马斯克反复推荐 赠富兰克林签名照及精美插图
[美]本杰明·富兰克林 著;李自修 译
Python数据科学手册
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
Python数据科学手册
汤姆素亚历险记:中小学生课外阅读快乐读书吧 儿童文学无障碍有声伴读世界名著童话故事
[美]马克·吐温
Python数据科学手册
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
Python数据科学手册
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
[美]凯文·莱曼 著;唐晓璐 译;斯坦威 出品
Python数据科学手册
国际大奖图画书系列 共11册(小老鼠的恐惧的大书,大灰狼,红豆与菲比,别烦我,下雪了 ,穿靴子的猫 ,先有蛋,绿 ,特别快递,如果你想看鲸鱼 ,一个部落的孩子 ) 麦克米伦世纪
[美]莱恩·史密斯 (英)埃米莉·格雷维特 (美)劳拉·瓦卡罗·等/文 (英)埃米莉·格雷维特 等/图 彭懿 杨玲玲 阿甲 孙慧阳 白薇 译