问答 · ANSWER
Pandas 函数应用进阶是什么?
直接回答
Pandas函数应用进阶包括Series.map、DataFrame.apply和DataFrame.map,分别用于单列映射、按行/列批量计算和全表单元格变换,需注意轴向和版本变更。
关键要点
- Series.map仅作用于单列,进行元素级值替换或映射。
- DataFrame.apply可沿axis=0(列)或axis=1(行)进行批量计算。
- DataFrame.map对整张DataFrame的每个单元格做元素级变换,取代了原applymap。
- apply的轴向语义不同:axis=1是行级交叉运算,axis=0是列级聚合。
- pandas 3.0中移除了applymap,统一使用DataFrame.map。
- 选择时:单列映射用Series.map,行/列计算用apply,全表变换用map。
怎么选 / 怎么做
选择函数应用API的判断顺序:
- 只处理一列的值映射 → 用 Series.map。
- 需要沿行或沿列把多列组合成一个结果 → 用 DataFrame.apply。
- 需要对整张表的每个单元格做同一个轻量变换 → 用 DataFrame.map。
常见问题
Series.map、DataFrame.apply和DataFrame.map分别用于什么?
Series.map处理单列;apply按行或列计算;map处理全表。
DataFrame.apply中axis=1和axis=0有什么区别?
axis=1是行级交叉计算,axis=0是列级聚合。
pandas 3.0中applymap有什么变化?
applymap已移除,统一使用DataFrame.map。