第 20 章 时间序列高级:工作日历、节假日、时区与频率转换
[第 14 章](14-时间序列分析.md)讲了时间序列的基础(resample/rolling/shift)。本篇深入进阶:**工作日与业务日历、节假日处理、时区与夏令时、Period 区间、频率转换、时间特征工程**。这些是金融、运营、排班等真实场景的高频需求。
来自一线开发者的实践、思考与复盘。
[第 14 章](14-时间序列分析.md)讲了时间序列的基础(resample/rolling/shift)。本篇深入进阶:**工作日与业务日历、节假日处理、时区与夏令时、Period 区间、频率转换、时间特征工程**。这些是金融、运营、排班等真实场景的高频需求。
在[第 13 章](13-分组聚合:groupby.md)掌握了 groupby 基础后,本篇进入进阶:**分组+滚动窗口、分组内 shift/diff、自定义聚合对象、named agg 高级用法、链式流水线、分组时间序列重采样**。这些是数据分析实战中真正高频的高阶技巧。
`SettingWithCopyWarning` 是 pandas 用户最常见的困惑之一。本篇文章从**底层内存机制**讲起,彻底弄清"视图(view)"与"副本(copy)"的区别,理解警告产生的原因,掌握安全修改数据的最佳实践,并介绍 pandas 2.0 的 **Copy-on-Write(写时复制)** 新机制。
在[第 6 章](06-数据选择与索引.md)掌握了 loc/iloc 的基础后,本篇带你深入 pandas 的索引高阶玩法:**MultiIndex(多层索引)的创建、访问、排序、层级变换**,以及 `IndexSlice`、`xs`、`get_level_values` 等高级索引器。多层索引是透视表、分组统计、面板数据的基石。
这是系列的最后一篇。前半部分讲 pandas 的性能优化技巧(向量化、内存优化、大数据处理),后半部分用一个完整的**实战项目**把前面 15 章的知识串起来:从读数据、清洗、分析到可视化出报告。
"一图胜千言"。pandas 内置了基于 Matplotlib 的绘图接口(`.plot`),几行代码就能生成折线图、柱状图、散点图、箱线图、直方图等常用图表。本篇文章带你掌握 pandas 绘图的全部常用技能,并能与 Matplotlib 无缝配合做细节美化。
时间序列数据无处不在:股票、销量、日志、传感器……pandas 对时间序列的支持极其强大:**日期解析、日期索引、重采样、滚动窗口、时间偏移**。本篇文章系统讲解 pandas 的时间序列武器库。
`groupby` 是 pandas **最强大**的统计分析武器:按一个或多个键把数据分组,然后对每组做聚合、变换、过滤。它对应 SQL 的 `GROUP BY`,也是"拆分-应用-合并"(split-apply-combine)思想的典范。
数据有两种典型形态:**长格式**(一行一个观测)和**宽格式**(一行多个变量)。分析时经常需要在两者之间切换,并生成 Excel 式的**透视表**。本篇文章系统讲解 pandas 的重塑武器:**pivot / pivot_table / melt / stack / unstack / crosstab**。
真实分析中,数据往往分散在多张表里:订单表、客户表、商品表……把它们合起来是必修课。本篇文章讲解 pandas 的三大合并武器:**concat(拼接)、merge(SQL 式连接)、join(索引连接)**。