目 录
第 1 章 数据科学概述 ··················································································1
1.1 什么是数据科学? ············································································1
1.2 大数据技术·····················································································6
1.3 数据未来·····················································································.20
第 2 章 Python 基础··················································································.23
2.1 编程环境与规范············································································.23
2.2 数据类型、数据载体及运算 ····························································.25
2.3 序列结构·····················································································.30
2.4 程序流程控制···············································································.38
2.5 函数···························································································.40
2.6 字符串························································································.45
2.7 文件操作·····················································································.50
2.8 面向对象程序设计·········································································.51
第 3 章 科学计算—— Numpy······································································.57
3.1 计算基础·····················································································.58
3.1.1 什么是科学计算? ·······························································.58
3.1.2 Numpy 基础········································································.62
3.2 数组的创建与访问·········································································.65
3.2.1 创建数组 ···········································································.66
3.2.2 数组的访问 ········································································.72
3.3 数组的基本操作············································································.74
3.4 数组的基本运算············································································.85
3.5 矩阵基础及运算············································································112
3.6 Numpy 的简单应用········································································127
第 4 章 数据处理和分析—— Pandas ·····························································135
4.1 数据结构·····················································································136
4.1.1 常用数据结构 ·····································································136
4.1.2 数据类型 ···········································································137
4.1.3 数据类型的简单使用 ····························································138
4.1.4 系列的基本使用 ··································································140.VI·
4.1.5 数据帧的基本使用 ·······························································145
4.2 数据加载与文件格式······································································154
4.2.1 Pandas 的 I/O 功能································································155
4.2.2 数据读写与文件格式 ····························································158
4.3 数据清洗与预处理·········································································184
4.3.1 检测与处理缺失值 ·······························································185
4.3.2 检测和处理重复值 ·······························································192
4.3.3 检测和处理异常值 ·······························································197
4.3.4 数据转换 ···········································································201
4.3.5 数据匹配 ···········································································213
4.3.6 数据标准化 ········································································218
4.4 数据处理与分析············································································221
4.4.1 层次化索引 ········································································222
4.4.2 数据连接与合并 ··································································234
4.4.3 数据聚合与分组运算 ····························································245
4.5 时间序列分析···············································································261
4.5.1 时间序列基础 ·····································································261
4.5.2 时间戳( Timestamp) ···························································265
4.5.3 时区( Timezone) ·······························································274
4.5.4 时期( Period) ····································································277
4.5.5 时间差( Timedelta) ····························································283
4.5.6 时间序列重构 ·····································································285
4.6 Pandas 高级应用 ···········································································302
4.6.1 分类数据 ···········································································302
4.6.2 链式编程技术 ·····································································310
第 5 章 数据可视化—— Matplotlib·······························································315
5.1 绘图基础·····················································································315
5.2 二维图形可视化············································································328
5.3 三维图形可视化············································································354
5.4 使用动画·····················································································365
5.4.1 使用 Animation 模块创建动画 ·················································365
5.4.2 使用 OpenGL 创建动画 ·························································373
5.5 复杂网络结构可视化······································································379
5.5.1 网络可视化基础 ··································································380
5.5.2 网络图的生成 ·····································································385
5.5.3 网络图的绘制 ·····································································387