1. 定位与价值
《Learning Pandas 2.0》是一本面向数据科学家、机器学习工程师及分析师的实战指南,系统讲解如何利用 Pandas 2.0 进行高效的数据清洗、转换、分析与建模。全书以“理论+代码+案例”三位一体的方式,帮助读者在真实业务场景中快速落地。
2. 内容结构概览
2.1 基础篇(第1–3章)
- Pandas 2.0 全景:回顾 0.1.x → 2.0 的演进,重点介绍 2.0 在性能、类型系统、API 一致性上的突破。
- 核心数据结构:详解 Series(一维带标签数组)与 DataFrame(二维表)的内存模型、索引机制及常用操作。
- 安装与配置:提供跨平台(Windows / macOS / Linux)的虚拟环境搭建、pip 安装、版本验证及常用全局选项设置。
2.2 数据输入输出(第4章)
- 多格式读写:CSV、Excel(xls/xlsx)、JSON、HTML、Parquet、Stata 等一键转换。
- 数据库交互:以 SQLite 为例,演示
read_sql / to_sql 实现“读取—分析—回写”闭环。
- 实时数据源:
- Web API:使用
requests + pandas.read_json 拉取 JSONPlaceholder 示例数据。
- 网页抓取:BeautifulSoup 解析 HTML 表格,快速构建 DataFrame。
2.3 数据清洗与预处理(第5章)
- 缺失值处理:
isna 定位 → dropna 删除或 fillna 填充(常数、均值、前后向填充)。
- 脏数据治理:去重、类型转换、列重命名、数值归一化/标准化、类别变量编码(one-hot / label)。
- 可复现流水线:将上述步骤封装为函数,实现“读取→清洗→存储”一键化。
2.4 索引与选择高阶技巧(第6章)
- 四大定位器:
loc(标签)、iloc(位置)、at / iat(标量加速)。
- 层级索引(MultiIndex):用
set_index 构建“国家-性别”二级索引,支持 xs、swaplevel、sort_index。
- 布尔与条件选择:单条件、多条件(& / |)、
query 字符串语法,提升可读性。
- 高级索引器:
where / mask 保留或替换不符合条件的值;isin 快速筛选枚举;eval 执行列间表达式。
2.5 数据整合与重塑(第7章)
- 横向/纵向合并:
merge(列连接,支持 inner/left/right/outer)、join(索引连接)。
- 堆叠与追加:
concat(轴 0 或 1)、append 行追加,处理千万级数据分块读取后合并。
- 透视与逆透视:
pivot 将长表变宽表;melt 将宽表变长表,适配可视化或建模需求。
- 自定义聚合:
groupby 后接 agg / apply,内置函数不足时传入自定义 Python 函数(如极差计算)。
2.6 时间序列专项(第8章)
- 时间对象体系:Timestamp(时间点)、Period(时间段)、Timedelta(时间差)。
- 核心操作:
- 重采样(resample)与频率转换(asfreq)。
- 时区本地化(
tz_localize)与转换(tz_convert)。
- 滚动窗口(rolling)、指数加权移动平均(ewm)、差分(diff)、滞后(shift)。
- 高阶分析:使用 statsmodels 进行趋势-季节-残差分解、ARIMA 建模与 5 步预测。
2.7 性能优化与分布式(第9章)
- 内存压缩:列式存储、类别型(category)替代 object、按需指定
dtype。
- 分块迭代:
chunksize 参数实现“边读边处理”,避免一次性载入大文件。
- 并行与分布式:
- 单机多核:Dask DataFrame 无缝替换 Pandas。
- 编译加速:Cython / Numba 对自定义函数 JIT 编译,实测提速 5–20 倍。
- 诊断工具:
memory_usage 查看内存占用、%timeit / snakeviz 定位瓶颈。
2.8 机器学习整合(第10章)
- 特征工程:缺失值插补、类别编码、标准化、多项式特征、交互特征。
- 数据集划分:
train_test_split、K 折交叉验证(KFold、StratifiedKFold)。
- 框架对接:
- Scikit-learn:Pipeline 中直接嵌入 Pandas DataFrame。
- TensorFlow / PyTorch:利用
tf.data / DataLoader 实现批量读取,保持数据在 GPU 与 CPU 间零拷贝。
2.9 文本与 NLP(第11章)
- 字符串向量化:
str.contains / str.split / str.replace 等向量化操作。
- 特征提取:CountVectorizer → 稀疏矩阵 → 逻辑回归做情感分类。
- 主题建模:LDA(Latent Dirichlet Allocation)发现隐藏主题。
- 文本聚类:K-means 对文档向量聚类,可视化词云。
2.10 地理空间分析(第12章)
- 数据格式:GeoJSON、Shapefile、GPX、KML、GeoTIFF 简介。
- GeoPandas 集成:读取、投影转换、空间连接(sjoin)、缓冲区(buffer)、叠加分析(overlay)。
- 地理编码:调用第三方 API 实现地址 ↔ 经纬度互转。
3. 特色与亮点
- 全栈案例:以“Customer Churn Modelling”数据集贯穿始终,从原始 CSV 到机器学习模型,形成完整闭环。
- 代码即拿即用:所有示例均附 GitHub 链接,支持“复制-粘贴-运行”。
- 性能对比:关键步骤给出 %%timeit 结果,量化优化收益。
- 前沿工具:涵盖 Dask、Numba、GeoPandas、statsmodels 等生态,确保技术栈不过时。
4. 适合读者
- 已掌握 Python 基础,希望系统提升数据处理能力的数据分析师。
- 需要快速将 Pandas 2.0 新特性落地到生产环境的机器学习工程师。
- 对时间序列、文本、地理空间等专项场景有深度需求的科研人员。
读完本书,你将具备构建“端到端数据流水线”的能力:从多源数据接入 → 清洗 → 特征工程 → 建模 → 结果回写,全流程高效、可维护、可扩展。