第02章 分诊筛查:数据选取与过滤


文档摘要

第02章 分诊筛查:数据选取与过滤 章节摘要:病人在前台建完档(第01章),现在走进分诊台。分诊要回答两个问题:按谁叫号(loc标签与iloc位置)、按什么条件筛(布尔索引)。本章把这两套叫号方式和多层索引切片讲透,读完你能从上万行明细里精准取出任何想要的子集。 一条主线 延续我们的销售明细病人:月末要给三家门店分别出报告,还要单独复核金额异常的交易。分诊护士手里有三种器械:loc按挂号条叫号、iloc按排队位置叫号、布尔索引按症状筛人。主线任务是把"取数"这个每天都要做几十次的动作,做得又准又不留隐患。分诊失误的代价在后面章节会放大——在第05章聚合一列错数据,报告就全错。 沿途站点 2-1 loc与iloc:两种叫号方式 标签与位置两套坐标的正式对决。

第02章 分诊筛查:数据选取与过滤

章节摘要:病人在前台建完档(第01章),现在走进分诊台。分诊要回答两个问题:按谁叫号(loc标签与iloc位置)、按什么条件筛(布尔索引)。本章把这两套叫号方式和多层索引切片讲透,读完你能从上万行明细里精准取出任何想要的子集。

一条主线

延续我们的销售明细病人:月末要给三家门店分别出报告,还要单独复核金额异常的交易。分诊护士手里有三种器械:loc按挂号条叫号、iloc按排队位置叫号、布尔索引按症状筛人。主线任务是把"取数"这个每天都要做几十次的动作,做得又准又不留隐患。分诊失误的代价在后面章节会放大——在第05章聚合一列错数据,报告就全错。

沿途站点

2-1 loc与iloc:两种叫号方式

标签与位置两套坐标的正式对决。哪些场景必须用iloc、哪些切片结果与直觉相反,一次说清。

2-2 布尔索引:分诊条件

按金额筛、按门店筛、按时间窗筛。布尔掩码是Pandas里被使用最频繁的器械,也是链式条件的坑最多的地方。

2-3 多层索引与切片:分诊台的科室分区

当数据天然按"门店-月份"两级组织时,MultiIndex让分诊条变得立体。取数语法更复杂,但换来结构化的大宽表操作能力。

拐点与结论

本章的拐点在2-1的"切片双闭"与2-2的"条件运算符优先级"两处:前者让很多人第一次发现loc['A':'C']比iloc[0:2]多取一行,后者让and换成&之后括号少写一对就报错。读完本章,你应当能够:

  • 用loc与iloc完成行列联合取数,并说出两者切片端点规则的差异
  • 解释布尔掩码的构造过程,用&、|、~组合条件且括号不丢
  • 用isin、between、query三件套替代冗长的链式比较
  • 构造MultiIndex并完成跨层切片与swaplevel重排
  • 排查KeyError与IndexingError两类分诊事故

前置与延伸

前置是第01章的两套坐标概念(1-2)与建档三动作。延伸:query的字符串表达式是本章布尔条件的亲戚,性能视角的对比留到第08章;多层索引的更多玩法在透视表(5-3)与重塑(6-3)两处兑现。本章代码建议在乱序、含缺失、含重号标签的数据上各跑一遍,边界行为见过一次,生产事故就少一次。分诊是全册里"每天都要做几十次"的动作,值得练到不用思考;一旦形成肌肉记忆,你花在取数上的心智就能全部省下来,留给真正需要思考的口径问题。

下一章的接力

分诊筛出的子集进入内科检查室:第03章处理缺失值与重复记录。注意,分诊时的布尔条件在缺失值上会整体失效(NaN参与比较返回False),这正是内科要先行的原因之一。

本章考核知识点清单

分诊台的本领需要逐条过关:用loc与iloc完成行列联合取数并说清端点差异;用括号纪律组合布尔条件,排查漏括号的TypeError;用isin与between改写冗长条件;解释NaN在布尔筛选中被静默丢弃的机制与复核办法;构造MultiIndex并完成元组定位、IndexSlice切片、xs抽片;判断乱序索引为何必须先sort_index;说明副本与视图问题的两条安全姿势。这八条是后面六章每一步操作的地基,任何一条含糊,后面都会以返工的形式收利息。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U