先看看示例
作者提供的示例,实际效果取决于你的输入和使用工具。
输入
orders.csv 含 region,status,amount。三行演示数据:East,paid,10;East,paid,空;West,pending,空。只统计 status=paid;在已付款范围内排除空金额并计数。
输出
编辑示例 · 未运行
import polars as pl
q = pl.scan_csv("orders.csv", schema_overrides={"amount": pl.Float64})
paid = q.filter(pl.col("status") == "paid")
invalid = paid.filter(pl.col("amount").is_null()).select(
pl.len().alias("excluded_paid_rows")
)
report = (paid.filter(pl.col("amount").is_not_null())
.group_by("region")
.agg(pl.col("amount").sum().alias("revenue"))
.sort("revenue", descending=True))
print(report.explain())
report.collect().write_csv("region_revenue.csv")
print(invalid.collect())对三行演示数据的手算核对值:East 收入为 10,已付款范围排除 1 行;pending 的空金额不计入本次排除数。代码未执行,这些数值用于核对运行结果。
方法说明
通过表达式、延迟查询与流式执行整理表格数据,适合迁移复杂的清洗和汇总流程。
具体任务
按地区汇总已付款订单:通过表达式、延迟查询与流式执行整理表格数据,适合迁移复杂的清洗和汇总流程。
迁移已有数据转换:将 pandas 的逐行处理改成 Polars 表达式,并对照小样本结果和空值行为。
必需材料
数据路径与字段类型
筛选、聚合或连接规则
可选材料
文件规模与内存限制
预期结果样例
使用门槛
有兼容 Polars 的 Python 环境,并能确认日期、空值与主键语义。
这个 Skill 额外提供的方法
用表达式与惰性查询把读取、过滤和聚合连成可检查的执行计划。
编辑示例(未运行)
按地区汇总已付款订单
任务:请根据下面的示例材料完成按地区汇总已付款订单,把判断依据和待确认事项写清楚。
输入:
orders.csv 含 region,status,amount。三行演示数据:East,paid,10;East,paid,空;West,pending,空。只统计 status=paid;在已付款范围内排除空金额并计数。
结果片段:
```python
import polars as pl
q = pl.scan_csv("orders.csv", schema_overrides={"amount": pl.Float64})
paid = q.filter(pl.col("status") == "paid")
invalid = paid.filter(pl.col("amount").is_null()).select(
pl.len().alias("excluded_paid_rows")
)
report = (paid.filter(pl.col("amount").is_not_null())
.group_by("region")
.agg(pl.col("amount").sum().alias("revenue"))
.sort("revenue", descending=True))
print(report.explain())
report.collect().write_csv("region_revenue.csv")
print(invalid.collect())
```
对三行演示数据的手算核对值:East 收入为 10,已付款范围排除 1 行;pending 的空金额不计入本次排除数。代码未执行,这些数值用于核对运行结果。
用表达式与惰性查询把读取、过滤和聚合连成可检查的执行计划。 该片段是编辑示例,用于说明交付形态,未运行上游技能。
首次任务
请使用「用 Polars 写清晰高效的数据转换」完成「按地区汇总已付款订单」。
任务要求:用表达式与惰性查询把读取、过滤和聚合连成可检查的执行计划。
我的必需材料:
- 数据路径与字段类型:[请填写或粘贴]
- 筛选、聚合或连接规则:[请填写或粘贴]
请基于上述实际材料输出:Polars 查询代码、执行计划与结果校验。缺少依据的地方单列为待确认,不编造事实;未执行的操作或测试明确标为未执行。
验收要求:
1. 金额汇总与人工小样本一致。
2. 已付款范围内的有效行数与空金额排除数能对账,不混入其他状态。
3. 先查看计划再测资源消耗。
验收方法
金额汇总与人工小样本一致
已付款范围内的有效行数与空金额排除数能对账,不混入其他状态
先查看计划再测资源消耗
依赖与准备
固定来源以 Python 3.10+、Polars 1.41.x 为兼容基线;CSV 基础流程只需 Polars,Excel/数据库/云路径另装对应扩展。
使用边界
高效代码不等于实测提速,需相同数据下对比。
云存储、数据库和 GPU 属可选集成,需单独依赖与权限。
排错
连接后金额变大:检查连接键是否唯一以及是否发生多对多扩张。
字符串金额无法求和:明确清洗货币符号和千位分隔规则,再转换类型并记录失败行。
固定来源
https://github.com/K-Dense-AI/scientific-agent-skills/blob/065b734670d7d990627dbc06a05b5a99be33f1f1/skills/polars/SKILL.md