Python简单易学,拥有丰富的库,并且具有极强的包容性。本书展示了如何利用Python语言的强大功能,以*小的编程代价对数据进行提取、处理和分析。这一版除了介绍数据分析和Python基础知识、NumPy库和pandas库,使用pandas读写和处理数据,用matplotlib库实现数据可视化,用scikit-learn库进行机器学习,D3库嵌入和识别手写体数字,还新增了用TensorFlow进行深度学习,用NLTK分析文本数据,用OpenCV分析图像及实现计算机视觉等内容。 法比奥·内利(Fabio Nelli),IRBM科学园IT科学应用专家,曾为IBM、EDS等企业提供咨询。目前从事Java应用开发,对接科学仪器和Oracle数据库,生成数据和Web服务器应用,为研究人员提供实时分析结果。他还是Meccanismo Complesso社区(www.meccanismocomplesso.org)的项目协调人。 版权声明献词译者序第 1章 数据分析简介 11.1 数据分析 11.2 数据分析师的知识范畴 21.2.1 计算机科学 21.2.2 数学和统计学 31.2.3 机器学习和人工智能 31.2.4 数据来源领域 31.3 理解数据的性质 41.3.1 数据到信息的转变 41.3.2 信息到知识的转变 41.3.3 数据的类型 41.4 数据分析过程 41.4.1 问题定义 51.4.2 数据抽取 61.4.3 数据准备 61.4.4 数据探索和可视化 71.4.5 预测建模 71.4.6 模型验证 81.4.7 部署 81.5 定量和定性数据分析 91.6 开放数据 91.7 Python和数据分析 101.8 结论 11第 2章 Python世界简介 122.1 Python——编程语言 122.2 Python 2和Python 3 142.2.1 安装Python 152.2.2 Python发行版 152.2.3 使用Python 172.2.4 编写Python代码 182.2.5 IPython 222.3 PyPI仓库——Python包索引 252.4 SciPy 292.4.1 NumPy 292.4.2 pandas 292.4.3 matplotlib 302.5 小结 30第3章 NumPy库 313.1 NumPy简史 313.2 NumPy安装 313.3 ndarray:NumPy库的心脏 323.3.1 创建数组 333.3.2 数据类型 343.3.3 dtype选项 343.3.4 自带的数组创建方法 353.4 基本操作 363.4.1 算术运算符 363.4.2 矩阵积 373.4.3 自增和自减运算符 383.4.4 通用函数 393.4.5 聚合函数 393.5 索引机制、切片和迭代方法 403.5.1 索引机制 403.5.2 切片操作 413.5.3 数组迭代 423.6 条件和布尔数组 443.7 形状变换 443.8 数组操作 453.8.1 连接数组 453.8.2 数组切分 463.9 常用概念 483.9.1 对象的副本或视图 483.9.2 向量化 483.9.3 广播机制 493.10 结构化数组 513.11 数组数据文件的读写 523.11.1 二进制文件的读写 533.11.2 读取文件中的列表形式数据 533.12 小结 54第4章pandas库简介 554.1 pandas:Python数据分析库 554.2 安装pandas 564.2.1 用Anaconda安装 564.2.2 用PyPI安装 564.2.3 在Linux系统的安装方法 574.2.4 用源代码安装 574.2.5 Windows模块仓库 574.3 测试pandas是否安装成功 574.4 开始pandas之旅 584.5 pandas数据结构简介 584.5.1 Series对象 594.5.2 DataFrame对象 654.5.3 Index对象 714.6 索引对象的其他功能 724.6.1 更换索引 724.6.2 删除 744.6.3 算术和数据对齐 754.7 数据结构之间的运算 764.7.1 灵活的算术运算方法 764.7.2 DataFrame和Series对象之间的运算 774.8 函数应用和映射 784.8.1 操作元素的函数 784.8.2 按行或列执行操作的函数 784.8.3 统计函数 794.9 排序和排位次 804.10 相关性和协方差 824.11 NaN数据 844.11.1 为元素赋NaN值 844.11.2 过滤NaN 844.11.3 为NaN元素填充其他值 854.12 等级索引和分级 854.12.1 重新调整顺序和为层级排序 874.12.2 按层级统计数据 884.13 小结 88第5章 pandas:数据读写 895.1 I/O API工具 895.2 CSV和文本文件 905.3 读取CSV或文本文件中的数据 905.3.1 用RegExp解析TXT文件 925.3.2 从TXT文件读取部分数据 945.3.3 将数据写入CSV文件 945.4 读写HTML文件 965.4.1 写入数据到HTML文件 965.4.2 从HTML文件读取数据 985.5 从XML读取数据 995.6 读写Microsoft Excel文件 1015.7 JSON数据 1025.8 HDF5格式 1055.9 pickle——Python对象序列化 1065.9.1 用cPickle实现Python对象序列化 1065.9.2 用pandas实现对象序列化 1075.10 对接数据库 1085.10.1 SQLite3数据读写 1085.10.2 PostgreSQL数据读写 1105.11 NoSQL数据库MongoDB数据读写 1125.12 小结 113第6章 深入pandas:数据处理 1146.1 数据准备 114合并 1156.2 拼接 1186.2.1 组合 1216.2.2 轴向旋转 1226.2.3 删除 1246.3 数据转换 1246.3.1 删除重复元素 1256.3.2 映射 1256.4 离散化和面元划分 1296.5 排序 1336.6 字符串处理 1346.6.1 内置的字符串处理方法 1346.6.2 正则表达式 1356.7 数据聚合 1376.7.1 GroupBy 1376.7.2 实例 1386.7.3 等级分组 1396.8 组迭代 1406.8.1 链式转换 1406.8.2 分组函数 1416.9 高级数据聚合 1426.10 小结 145第7章 用matplotlib实现数据可视化 1467.1 matplotlib库 1467.2 安装 1477.3 IPython和Jupyter QtConsole 1477.4 matplotlib架构 1487.4.1 Backend层 1497.4.2 Artist层 1
阅读更多