第1章 准备工作7
1.1 本书内容7
1.2 为什么使用Python进行数据分析8
1.3 重要的Python库9
1.4 安装和设置14
1.5 社区和会议18
1.6 本书导航18
第2章 Python语法基础、IPython和Jupyter notebook21
2.1 Python解释器22
2.2 IPython基础23
2.3 Python语法基础29
2.4总结47
第3章 Python的数据结构、函数和文件48
3.1 数据结构和序列48
3.2 函数65
3.3 文件和操作系统76
3.4 总结81
第4章 NumPy基础:数组和向量化计算82
4.1 NumPy的ndarray:多维数组对象84
4.2 生成伪随机数101
4.3 通用函数:快速的元素级数组函数103
4.4 利用数组进行面向数组编程105
4.5 使用数组进行文件输入和输出113
4.6 线性代数114
4.7 示例:随机漫步115
4.8 总结118
第5章 pandas入门119
5.1 pandas的数据结构介绍120
5.2 基本功能133
5.3 描述性统计的汇总和计算159
5.4 总结167
第6章 数据加载、存储与文件格式168
6.1 读写文本格式的数据168
6.2 二进制数据格式185
6.3 与Web API交互190
6.4 与数据库交互191
6.5 总结193
第7章 数据清洗和准备194
7.1 处理缺失数据194
7.2 数据转换200
7.3 扩展数据类型214
7.4 字符串操作216
7.5 分类数据224
7.6 总结233
第8章 数据规整:连接、联合和重塑234
8.1 层次化索引234
8.2 联合与合并数据集240
8.3 重塑和透视256
8.4 总结264
第9章 绘图和可视化265
9.1 matplotlib API入门266
9.2 使用pandas和seaborn绘图279
9.3 其他Python可视化工具293
9.4 总结294
第10章 数据聚合与分组操作295
10.1 GroupBy机制296
10.2 数据聚合304
10.3 Apply:通用的“拆分-应用-联合”范式310
10.4 分组转换和“展开式”GroupBy运算322
10.5 透视表和交叉表326
10.6 总结330
第11章 时间序列331
11.1 日期和时间数据的类型及工具332
11.2 时间序列基础知识336
11.3 日期的范围、频率以及移位341
11.4 时区处理348
11.5 周期及其算术运算353
11.6 重采样及频率转换360
11.7 移动窗口函数369
11.8 总结375
第12章 Python建模库介绍376
12.1 pandas与模型代码的接口376
12.2 用Patsy创建模型描述379
12.3 statsmodels介绍385
12.4 scikit-learn介绍390
12.5 总结393
第13章 数据分析案例395
13.1 来自1.USA.gov的Bitly数据395
13.2 MovieLens 1M数据集404
13.3 1880—2010年间全美婴儿姓名411
13.4 USDA食品数据库425
13.5 2012年联邦选举委员会数据库431
13.6 总结440
附录A 高阶NumPy441
附录B 更多关于IPython的内容475
^ 收 起