本章要回答的问题:料洗净了,怎么按业务问题精准下刀——只取要的行与列?怎么让数据按想要的次序站队?文本和时间这两类"软料"怎么切成下锅的形状?本章把切配台上的四把刀逐一交到你手上。
清洗解决了"脏"的问题,切配解决"形"的问题。报表要的往往不是全量数据,而是"华东大区、近季度、金额过千"这几刀切出来的切片;榜单要的是排序与排名;文本要拆地址、提号码;时间要按月归拢、按周对齐。这些活都在下锅之前完成——切得准,汤锅区的聚合才有干净的分组;切得歪,后面的每一步都在为歪料返工。老后厨讲"三分灶上、七分案上",案上的功夫就是本章。
切配台的风格与择菜间不同:清洗重在"判断与取舍",切配重在"精准与顺手"。本章的函数大多不改变数据本身,只改变数据的范围与形态——loc 与 iloc 决定"取哪块",sort_values 决定"什么次序",str 与 dt 两个访问器决定"软料切多细"。四把刀各管一面,组合起来才有完整的案头功夫。
可考核知识点清单:loc 与 iloc 一个按标签一个按位置,区间一闭一开;布尔面具组合时为什么必须用与或非符号而不是普通逻辑词;链式索引为什么会招来 SettingWithCopyWarning;sort_values 多列混合升降序的写法;nlargest 的 keep 参数在并列值时的行为;contains 的正则开关默认状态与踩法;extract 按分组捕获的返回形态;dt 访问器只认时间类型的原因;date_range 的 freq 取值;to_period 在按月归拢时的用法。
| 节 | 回答哪个问题 | 关键产出 |
|---|---|---|
| 3.1 数据筛选与切片 | 要的那块怎么取 | 四种下刀方式与选型 |
| 3.2 数据排序 | 谁先谁后怎么站 | 排序、冠军榜与排名 |
| 3.3 字符串操作 | 文本怎么切成结构 | str 访问器手法集 |
| 3.4 日期时间操作 | 时间怎么对齐归拢 | dt 访问器与时间轴 |
**问:loc 与 iloc 记不住怎么区分?**记关键词:loc 的 l 是 label(标签),iloc 的 i 是 integer(整数位置)。分不清时用一句话验证——能写列名的就是 loc。两套坐标的区间口径不同(一个双闭一个半开),3.1 的对照图值得贴在工位上。
**问:字符串与时间为什么单独立节?**因为它们是"软料":不像数值列那样规整,加工手法自成体系(str 与 dt 两个访问器),而且最容易藏脏数据。切配台的活里,大半工作量就在这两类软料上。
**问:排序这类基础操作也需要一章吗?**排序本身一步就完,但名次、并列、缺失站位、多列升降序这些"排序的周边"才是事故高发区。3.2 的价值不在 sort_values 这个名字,而在它的参数语义与善后动作。
切配齐整,下一站汤锅区:groupby 按组下锅、describe 一锅出统计、rolling 滚着算、np.where 条件分流。本章 3.1 的筛选是 4.4 条件计算的近亲,3.4 的月度归拢会在 4.3 的滚动窗口里天天见面。