手里一个 CSV、一个问题,不想为它单独开 Jupyter notebook。ChatGPT 的 Advanced Data Analysis 在沙箱里真跑 Python、画图、解释自己干了什么——前提是你用对了提问方式。这篇是入门:上传、做画像、一次一张图,以及拦下大多数烂结果的三个 sanity check。
这篇讲什么
用 ChatGPT 数据分析(Code Interpreter / Advanced Data Analysis)读 CSV 和 Excel、做列画像、回答单条问题出单张图——不开 notebook。
本文涉及的工具 / 概念:
- ChatGPT: OpenAI 的对话式 AI 助手,最早把 GPT 系列模型带给普通用户的产品。
- Advanced Data Analysis: Plus 起的功能,能在沙箱里真跑 Python。没这功能 ChatGPT 只是”推理”数据,不算。
- 数据画像: 列名、类型、行数、空值的快速摘要。任何分析之前都要先做这一步。
这篇适合谁看
偶尔做 CSV / XLSX 任务、又不是全职分析师的人——运营、PM、独立开发者、学生。如果你每天都在真 notebook 里做这事,本文会觉得慢。
什么时候适合用
一次性的小问题。“上个月各渠道的转化率?” “画每天注册数” “找 revenue 为空的行”。超过 ~10 万行或者需要可复现,切到 notebook。
什么时候不建议用
带 PII 或财务数据、不能上传给 OpenAI 的文件。几十万行以上。需要定时跑或别人能完全一致地重跑的场景。
开始前准备
- 把文件清一遍——删无关 sheet、脱敏、控制在 50MB 以内。
- 在打开 ChatGPT 前用一句话写清你的具体问题。模糊上传只会得到模糊输出。
- 心里要有粗略答案。如果手算和图差 10 倍,错的是图,不是你的直觉。
具体步骤
- 在支持文件分析的模型里开新对话(Plus 起)。上传一个文件,等”ready”指示。
- 第一条消息永远不是分析,永远是画像:“描述每一列:类型、样例值、空值数、总行数。” 仔细读。烂分析大半源自类型判断错。
- 每张图问一个具体问题。“在
channel = paid的行里,画revenue的分布。” 一次一张。 - 每张图之后要么要代码要么要总数。“按 channel 分组打印 revenue 的 sum——和图能对上吗?”
- 对比时把坐标轴给出来:“画
signups随时间、按country分组的折线图,只看近 90 天。” - 可能以后用得到的全部导出——清洗后的 CSV、图 PNG。会话沙箱会过期。
跑得通的 prompt 示例
1. "描述每一列。标出哪些像日期、数字、类别。
空值率 >5% 的列单独 flag。"
2. "用 created_at 按月分组,每组对 revenue 求 sum。
用表格输出,不要图。"
3. "画近 30 天的日活。X 轴 = 日期,Y 轴 = 数量。
标注最高和最低的两天。"
4. "找出 status = 'failed' 且 amount > 100 的行,
抽 10 行展示。"
第一次实操怎么跑
- 选一个手边的真实小 CSV——10MB 以内、没 PII。
- 先做画像(上面第 2 步)。仔细读列摘要。
- 问一个具体的画图问题。画完要代码。
- 抽一个数字,回到原始文件核对(Excel 或
less看一眼)。对得上,图就可信。对不上,找原因。
完成后检查
- 画像里的行数对得上你的预期吗?传错文件是第一大静默错误。
- 每列的类型合理吗?数字被解析成字符串,聚合会静默错。
- 每张图里的关键数字,能不能指出是哪段 Python 算的?
- 图回答的是你那个问题,还是它的近义版本?
怎么复用这套流程
- 把”先画像”的 prompt 存模板。基本所有 CSV 都通用,不分领域。
- 做一个 Custom GPT 叫”Data peek”,画像 prompt 当默认 starter。
- 每月重跑的分析,把跑得通的那段 Python 留下来自己跑,比再走一次对话快得多。
建议的操作流程
上传 → 列画像 → 一个具体问题 → 一张图 → 要代码或总数 → 标结论 → 导出清洗后的文件。小分析全程 10-20 分钟。
容易踩的坑
- 传超大文件(>50MB)——上传超时或被静默采样。
- 跳过画像。会分析错列,自己不知道。
- 不看坐标轴和刻度就采纳图。对数坐标好看但骗人。
- 问”给我洞察”而不是具体问题。泛 prompt = 泛段落。
- 不处理空值和重复值。明确问:“这次聚合空值怎么处理?”
- 关对话前没导出清洗后的数据。沙箱过期,工作就没了。
FAQ
- ChatGPT 真的跑代码吗?: 真跑——Plus 起的 Advanced Data Analysis。免费档只推理不执行。
- 跨对话会记住我的数据吗?: 不会。每个新对话是全新沙箱。要持久上下文(不是持久数据)用 Projects。
- 文件 500MB 怎么办?: 太大——先在本地采样,或者切回真 notebook。硬塞过去 ChatGPT 会静默采样。
- Excel 多 sheet 文件能处理吗?: 能,但要告诉它用哪个 sheet。默认会选第一个。