关于 dataset-quality-audit
这款表格数据审计工具从 12 个维度检查质量,并生成评分、总体等级和修复建议,适合分析人员及数据团队在使用数据前进行检查。
主要功能
- 0112 个维度的质量检查
- 02各维度评分与等级
- 03总体质量分数和等级
- 04可执行的修复建议
- 05支持 CSV、TSV、Excel 和 JSON
- 06JSON 报告与行采样
适用场景
- 01分析前审计数据集
- 02检查 ID 列是否存在重复值
- 03抽样检查大型文件的数据质量
- 04将检查结果保存为 JSON 报告
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ zebbern/ claude-code-guide --skill dataset-quality-audit安装后在 Claude Code 中输入/dataset-quality-audit确认已加载。
附带文件LICENSEscripts/data_quality_checker.py
详细介绍
dataset-quality-audit
一款数据质量审计工具,可对表格数据执行 12 个维度的质量检查,生成各维度得分(0–100)、总体评级和可执行的修复建议。
功能
| 维度 | 描述 |
|---|---|
| 缺失值 | 统计每列中 null/NaN 值的数量和百分比 |
| 重复行 | 统计完全重复行的数量和百分比 |
| 类型一致性 | 检查单列中的混合类型(例如,数字与文本混杂) |
| 值范围/异常值 | 使用 IQR 方法检测异常值 |
| 格式合规性 | 检查日期、电子邮件、电话号码和其他格式化字段的一致性 |
| 唯一性约束 | 检查 ID 类型的列是否包含重复值 |
| 空白字符问题 | 检查前导/尾随空格、空字符串和仅包含空白字符的值 |
| 常量列 | 检查仅包含一个唯一值的列(零信息量) |
| 分布偏度 | 检查数值列是否存在过度偏斜 |
| 列命名 | 检查列名中的空格、特殊字符或大小写不一致 |
| 基数异常 | 检查唯一值数量是否异常偏高或偏低 |
| 跨列一致性 | 检查跨列逻辑关系(例如,开始日期早于结束日期) |
快速开始
# Basic quality check
python3 scripts/data_quality_checker.py data.csv
# Save report as JSON
python3 scripts/data_quality_checker.py data.csv --output report.json
# Specify ID columns (for uniqueness checks)
python3 scripts/data_quality_checker.py users.csv --id-columns "user_id,email"
# Specify date columns (for format checks)
python3 scripts/data_quality_checker.py orders.csv --date-columns "created_at,updated_at"
详细用法
基本调用
python3 scripts/data_quality_checker.py <data-file> [options]
参数
| 参数 | 简写 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
input | — | 是 | — | 输入文件的路径(CSV/TSV/Excel/JSON) |
--output | -o | 否 | stdout | JSON 报告输出路径 |
--id-columns | -id | 否 | 自动检测 | 应保持唯一的逗号分隔列名 |
--date-columns | -dc | 否 | 自动检测 | 包含日期的逗号分隔列名 |
--sample | -s | 否 | 所有行 | 采样行数(适用于大型文件) |
--encoding | -e | 否 | utf-8 | 文件编码 |
输出格式(JSON)
{
"file": "data.csv",
"rows": 10000,
"columns": 15,
"overall_score": 78.5,
"grade": "B",
"dimensions": {
"missing_values": {
"score": 85.0,
"issues": [
{"column": "age", "missing_count": 150, "missing_pct": 1.5, "suggestion": "Fill with median or mode"}
]
},
"duplicates": {
"score": 95.0,
"issues": [...]
}
},
"top_suggestions": [
"Column 'age' has 1.5% missing values — consider filling with the median",
"Found 200 fully duplicated rows — consider deduplication"
]
}
评级标准
| 评级 | 分数范围 | 含义 |
|---|---|---|
| A+ | 95–100 | 质量极佳——可直接使用 |
| A | 90–95 | 质量良好——仅有少量问题 |
| B | 80–90 | 质量中等——建议使用前修复 |
| C | 60–80 | 质量较差——需要进行大量清理 |
| D | 40–60 | 质量很差——有许多问题需要处理 |
| F | 0–40 | 基本无法使用——需要重新收集数据或进行大规模清理 |
依赖项
- Python 3.8+
- pandas
- numpy
pip install pandas numpy
评论
支持 Markdown