日常分析工作里,重复写 Pandas 读写、清洗、聚合代码很耗时间。DeepSeek 适合把「业务描述」转成可运行的代码草稿,但需要你给出清晰的表格结构、字段含义和期望输出。
开始前准备什么
向 DeepSeek 描述任务时,尽量包含:
- 数据来源格式(CSV / Excel / SQL 查询结果)
- 字段名、类型、样例行(可脱敏)
- 期望输出(新列、汇总表、图表数据)
- Python 版本与是否可用
pandas、numpy
示例提示:
我有 sales.csv,字段:order_id, date, region, amount。
请用 pandas 读取,按 region 汇总 amount 总和,
输出前 5 行,并处理 amount 为空的情况。
只输出代码,用 ```python 包裹。
常见场景与提示词
读取与预览
读取 data.parquet,显示 shape、dtypes、前 3 行和缺失值计数。
清洗缺失与异常
将 price 为负数的行标记为异常,写入列 is_invalid;
date 解析失败设为 NaT;最后输出清洗前后行数。
分组聚合
按 month、category 分组,计算 revenue 总和与 order 计数,
按 revenue 降序,结果 reset_index。
合并多表
orders 与 users 按 user_id 左连接,
只保留 users 的 city、tier 字段,检查重复 user_id。
生成代码后的验收清单
- 在副本数据上运行,不要直接覆盖生产文件。
- 检查
dtype,日期列是否被读成 object。 - 分组键是否有隐藏空格:
df['col'].str.strip()。 - 大表注意内存:优先
dtype优化或分块chunksize。 - 让 DeepSeek 补充单元测试式断言,例如
assert df['amount'].min() >= 0。
减少幻觉的技巧
- 要求「仅使用我提供的字段名,未提供的列不要编造」。
- 附上 2–3 行真实样例数据。
- 分步生成:先读入预览,再清洗,再聚合,不要一次要完整 pipeline。
- 对复杂逻辑,让模型先输出步骤列表,确认后再写代码。
何时改用 API 或 Notebook 模板
- 同一报表每天跑:把验证过的代码存成脚本或 Jupyter 模板,DeepSeek 只负责改参数。
- 需要审计:在 Git 里版本化管理分析脚本,而不是每次从对话里复制。
DeepSeek 适合加速「从需求到第一版代码」;最终上线仍建议本地执行、核对结果后再交付业务方。