SuperAPI AI 工具集

python3-data

编程与开发

查看项目

更新于 10-15 22:40

技能介绍

用途:该技能面向 Python 数据工程任务,涵盖 pandas、polars、DuckDB、numpy、ETL 管道、表格数据接入,以及将 notebook 逻辑抽取为可测试模块。资料建议同时加载 standards-for-python-development(共享规则)、python3-typing(边界 schema)与 python3-testing(解析器与边界用例测试)。

主要能力与规范:提供质量清单,要求在首个稳定入口点做 schema 校验而非在转换深处;pd.read_csv()/pd.read_excel() 必须显式指定 dtype=,不依赖类型推断;原始 pd.DataFrame 不得在未记录列契约的情况下跨模块边界;merge/join 后需检查意外空值与行数变化;所有 Pydantic 边界模型设置 model_config = {"strict": True};禁止 inplace=True;使用 3 次以上的 notebook 逻辑应抽取为经测试的模块。

常见陷阱与替代做法:链式索引 df["a"]["b"] = x 会静默失败,应改用 df.loc[:, "b"] = x;大表避免 .apply(lambda),优先向量化;pd.merge() 后需断言无意外空值或重复键;df.drop(..., inplace=True) 已弃用且返回 None,应改为 df = df.drop(...);裸 pd.read_csv(path) 应始终传 dtype=。

选型决策:小于 100 万行表格用 pandas,不用 Polars(开销不划算);超过 100 万行或需要速度用 Polars;对本地文件做类 SQL 分析用 DuckDB,而非全部载入 pandas;只读 TOML 配置用标准库 tomllib(二进制模式 "rb"),不用 tomlkit;需保留注释读写 TOML 用 tomlkit(文本模式)。

模块布局建议:etl/ 下分 ingest.py(原始数据加载,边界)、validate.py(schema 校验,边界)、transform.py(业务逻辑,类型化核心)、load.py(输出写入,边界)、types.py(共享类型模型)。

限制:资料未提供具体安装命令、版本要求、收费信息或平台支持范围,暂未提供。