---
title: "整理脏数据并生成可用数据集"
description: "用 Codex 清洗 CSV 或 spreadsheet 数据：先保留原文件，再生成可审查的清洗副本和 data-quality note。"
verifiedAt: "2026-05-05"
---

import { Cards, Card } from 'fumadocs-ui/components/card';

当 CSV 或 spreadsheet 里混着不同日期格式、货币字符串、重复行、空值、别名和复制进去的汇总行时，不要直接覆盖原文件。把文件拖进 Codex，描述你已经看到的问题，让它写一个清洗后的副本，并附一份 data-quality note。

官方页面：[https://developers.openai.com/codex/use-cases/clean-messy-data](https://developers.openai.com/codex/use-cases/clean-messy-data)

<Cards>
  <Card title="Clean messy data" href="https://developers.openai.com/codex/use-cases/clean-messy-data">
    清洗 CSV 或 spreadsheet，同时保留原始文件。
  </Card>
  <Card title="Analyze data" href="https://developers.openai.com/codex/use-cases/analyze-data-export">
    在清洗之后继续生成分析和图表。
  </Card>
  <Card title="File inputs" href="https://developers.openai.com/api/docs/guides/file-inputs">
    了解把文件作为上下文输入的官方能力。
  </Card>
</Cards>

## 适合什么任务

| 场景 | Codex 应该做什么 |
|---|---|
| CSV 或 spreadsheet export 里日期格式混乱 | 统一日期格式，保留不能确定的行说明 |
| currency values 里有 `$`、逗号和空白 cell | 清理数字格式，但保持 blank currency cells 为空 |
| 多次导出造成 duplicate customer rows | 去重，并尽量保留 source row IDs |
| region、category 使用多个 aliases | 归一化别名，记录改动规则 |
| 表里混入 pasted summary rows | 移除汇总行，并在质量说明中列出 |

## 使用的能力

| 能力 | 用法 | 链接 |
|---|---|---|
| `$spreadsheet` | 检查 tabular files、清洗 columns、产出可 review 的文件和说明 | [https://developers.openai.com/codex/skills](https://developers.openai.com/codex/skills) |

相关官方说明：

- Analyze data with Codex：[https://developers.openai.com/codex/use-cases/analyze-data-export](https://developers.openai.com/codex/use-cases/analyze-data-export)
- File inputs：[https://developers.openai.com/api/docs/guides/file-inputs](https://developers.openai.com/api/docs/guides/file-inputs)
- Agent skills：[https://developers.openai.com/codex/skills](https://developers.openai.com/codex/skills)

## 起始提示词

```text
请清洗 @marketplace-risk-rollout-export.csv。

已知问题：
- 日期混用了 MM/DD/YYYY 和 YYYY-MM-DD
- currency values 里包含 $、逗号和空白 cells
- 重复导出导致少量 duplicate customer rows
- region 和 category names 使用了多种 aliases
- 数据里混入了 pasted summary rows

我需要：
- 输出一份 cleaned CSV
- 保持原始文件不变
- 统一使用一种日期格式
- blank currency cells 继续保持空白
- 尽可能保留 source row IDs
- 添加一份简短 data-quality note，列出被修改、移除，或无法有把握清洗的 rows
```

这个 prompt 的关键是先写明“哪里脏”，再写明“要什么结果”。不要只说“清洗一下这个表”。

## 产出物约定

清洗任务最好让 Codex 同时产出三样东西：

| 产出 | 用途 |
|---|---|
| `original` | 原始文件，绝不覆盖 |
| `cleaned` | 清洗后的 CSV 或 spreadsheet |
| `data-quality note` | 记录规则、删除行、可疑行和无法确认的问题 |

data-quality note 不需要很长，但必须能回答：

- 哪些字段被标准化。
- 哪些行被删除或合并。
- 哪些值保持空白。
- 哪些行 Codex 没有把握自动修。
- 行数和关键字段分布是否发生变化。

如果下游是 CRM、财务、投放后台或数据仓库，这份 note 比“清洗成功”更重要。它能让人审查清洗逻辑，而不是盲信输出文件。

## 操作步骤

1. 把文件拖进 Codex，或在 prompt 里用 `@customer-export.csv` mention 文件。
2. 写出你已经观察到的问题，例如 mixed dates、duplicates、aliases、summary rows。
3. 说明需要的输出形式：cleaned CSV、clean spreadsheet tab，或 upload-ready file。
4. 明确要求保留 original file unchanged。
5. 要求 Codex 输出 data-quality note，列出 changed、removed、uncertain rows。
6. 打开 cleaned copy 和 data-quality note，人工 review 后再用于下游流程。

## 验收重点

清洗任务的好坏不只看文件能否打开，还要看这些边界：

- 原始文件没有被覆盖。
- 清洗后的文件字段数和行数变化有解释。
- 日期、货币、类别等规则一致。
- 空值没有被随意填成 `0` 或未知字符串。
- 无法 confident clean 的行被标出来。
- 去重逻辑能追溯 source row IDs。

如果清洗结果要进入 CRM、财务、投放后台或数据仓库，先抽样核对几行，再上传。

## 进阶提示词

```text
请清洗 @export.csv，但不要覆盖原文件。

请先检查：
- header 是否唯一
- 日期格式有哪些
- currency / percentage / integer 字段是否混入符号
- 是否有重复行、空行、summary row
- category / region / status 是否有 aliases

请输出：
- cleaned CSV
- data-quality note
- 一段 row count summary

限制：
- 不要猜测无法确认的值
- 空白金额继续保持空白
- 删除或合并行时保留 source row IDs
- 如果规则会影响超过 5% 的行，先在 note 里突出说明
```

## 什么时候要停下来

这些情况不应该让 Codex 直接产出最终上传文件：

- 字段含义不清，比如 `status`、`type`、`stage` 没有业务字典。
- 多个系统导出的同名字段含义不同。
- 金额、税率、退款、佣金这类字段可能影响财务结果。
- 去重规则会合并客户、订单或付款记录。
- 清洗后行数变化很大，但原因不明确。

这时先让 Codex 做 profiling report，再由人确认规则。数据清洗的风险通常不在格式，而在“看似合理的错误归一化”。

## 官方资料

- [OpenAI Codex use case: Clean and prepare messy data](https://developers.openai.com/codex/use-cases/clean-messy-data)
- [Analyze data with Codex](https://developers.openai.com/codex/use-cases/analyze-data-export)
- [File inputs](https://developers.openai.com/api/docs/guides/file-inputs)
- [Codex skills](https://developers.openai.com/codex/skills)
