关于 data-wizard
面向数据科学与 ML 工程任务的全栈技能,从探索性分析延伸到模型部署策略。它会按任务复杂度选择处理流程,涵盖统计分析、可视化、实验设计、时序和异常检测。
主要功能
- 01探索性数据分析与质量评估
- 02模型选择与特征工程建议
- 03统计检验与实验设计
- 04规划并生成数据可视化
- 05时序预测与异常检测方案
- 06制定 MLOps 部署策略
适用场景
- 01检查数据集的缺失值和分布
- 02为预测任务选择模型及评估方式
- 03设计 A/B 测试和样本量分析
- 04规划时间序列预测或异常检测
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ wyattowalsh/ agents --skill data-wizard安装后在 Claude Code 中输入/data-wizard确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
data/feature-engineering-patterns.jsonmodel-catalog.jsonstatistical-tests-tree.jsonvisualization-grammar.jsonevals/eda-mode.jsonevals.jsonexperiment-design.jsonexplicit-invocation.jsonimplicit-trigger.jsonmodel-selection.jsonnegative-control.jsonstats-mode.jsonviz-dashboard.jsonviz-plan.jsonviz-render.jsonreferences/dashboard-design.mddata-quality.mdexperiment-design.mdfeature-engineering.mdmlops-maturity.mdmodel-selection.mdstatistical-tests.mdvisualization.mdscripts/asset_toolkit/__init__.py_shared.pycommon.pypackage.pyvalidate_evals.pyvalidate_hooks.pyvalidate_skill.py详细介绍
数据向导
全栈数据科学与机器学习工程——从探索性数据分析到模型部署策略。根据复杂度分类调整处理方式。
规范术语
| 术语 | 定义 |
|---|---|
| EDA | 探索性数据分析——对数据集进行系统化分析和汇总 |
| feature | 用作模型输入的单个可测量属性 |
| feature engineering | 创建、转换或筛选特征以提升模型性能 |
| hypothesis test | 用于确定观测数据是否支持某项主张的统计程序 |
| p-value | 假设原假设成立时,观测到至少与实际结果同样极端的数据的概率 |
| effect size | 差异或关系的大小,不受样本量影响 |
| power analysis | 确定检测给定大小效应所需的样本量 |
| CUPED | 使用实验前数据进行对照实验——用于 A/B 测试的方差缩减技术 |
| MLOps maturity | 等级 0(手动)、等级 1(机器学习流水线)、等级 2(CI/CD + CT)、等级 3(全面自动化) |
| data quality score | 综合完整性、一致性、准确性、时效性和唯一性的指标 |
| profile | 数据集的统计摘要:类型、分布、缺失模式、相关性 |
| anomaly | 显著偏离预期行为的数据点或模式 |
分派
$ARGUMENTS | 操作 |
|---|---|
eda <data> | EDA — 分析数据集、汇总统计、缺失模式和分布 |
model <task> | 模型选择 — 针对任务推荐模型、库和训练计划 |
features <data> | 特征工程 — 推荐转换、编码和筛选流水线 |
stats <question> | 统计 — 选择并设计统计假设检验 |
viz <data> | 可视化 — 根据数据推荐图表类型、编码和布局 |
viz plan <data> [goal] | 可视化计划 — 通过 viz-planner.py 根据数据和目标生成 JSON 图表计划 |
viz render <plan> <data> | 可视化渲染 — 通过 viz-renderer.py 根据计划生成 PNG/HTML 图表 |
viz dashboard <profile> | 可视化仪表板 — 通过 dashboard-builder.py 生成 HTML EDA 仪表板 |
experiment <hypothesis> | 实验设计 — A/B 测试设计、功效分析、CUPED |
可视化流水线:
viz plan→viz render→ 可选的viz dashboard。运行viz-planner.py生成 JSON 编码,运行viz-renderer.py生成 PNG/HTML 资源,然后将 profile 与 plan/render JSON 传给dashboard-builder.py,生成可分享的 EDA 报告。 |timeseries <data>| 时间序列 — 预测方法、分解和模型选择 | |anomaly <data>| 异常检测 — 检测方法、算法选择和阈值策略 | |mlops <model>| MLOps — 服务策略、部署流水线和监控计划 | | 关于数据的自然语言描述 | 自动检测 — 分类意图并路由到相应模式 | | 留空 | 任务集 — 显示常见数据科学任务及推荐模式 |
自动检测启发式规则
如果没有匹配的模式关键词:
- 提及数据集、CSV、列、行、缺失值 → EDA
- 提及预测、分类、回归、推荐 → 模型选择
- 提及转换、编码、缩放、归一化、独热编码 → 特征工程
- 提及检验、显著、p 值、假设、相关性 → 统计
- 提及图表、绘图、图形、可视化、仪表板 → 可视化
- 提及 A/B、实验、对照组、处理组、提升 → 实验设计
- 提及预测、季节性、趋势、时间序列、滞后 → 时间序列
- 提及离群值、异常、欺诈、异常状况、偏差 → 异常检测
- 提及部署、服务、流水线、监控、重新训练 → MLOps
- 意图不明确 → 询问:“属于哪个领域:EDA、建模、统计,还是其他领域?”
Gallery(空参数)
展示常见的数据科学任务:
| # | 任务 | 模式 | 示例 |
|---|---|---|---|
| 1 | 分析数据集概况 | eda | /data-wizard eda customer_data.csv |
| 2 | 选择模型 | model | /data-wizard model "predict churn from usage features" |
| 3 | 构建特征 | features | /data-wizard features sales_data.csv |
| 4 | 选择统计检验 | stats | /data-wizard stats "is conversion rate different between groups?" |
| 5 | 选择可视化方式 | viz | /data-wizard viz time_series_metrics.csv |
| 5b | 规划并渲染图表 | viz plan / viz render | /data-wizard viz plan sales.csv "compare regions" |
| 5c | 构建 EDA 仪表板 | viz dashboard | /data-wizard viz dashboard profile.json |
| 6 | 设计实验 | experiment | /data-wizard experiment "new checkout flow increases conversion" |
| 7 | 预测时间序列 | timeseries | /data-wizard timeseries monthly_revenue.csv |
| 8 | 检测异常 | anomaly | /data-wizard anomaly server_metrics.csv |
| 9 | 规划部署 | mlops | /data-wizard mlops "churn prediction model" |
选择一个数字,或描述你的数据科学任务。
技能匹配
开始前,检查是否有其他技能更适合:
| 信号 | 转向建议 |
|---|---|
| 数据库架构、SQL 优化、索引 | 建议使用 database-architect |
| 前端仪表板代码、React/D3 组件 | 建议使用相关的前端技能 |
| 数据管道、ETL、编排(Airflow、dbt) | 超出范围 — 建议使用数据工程工具 |
| 生产基础设施、Kubernetes、扩展 | 建议使用 devops-engineer 或 infrastructure-coder |
复杂度分类
从 4 个维度为查询评分(每项 0-2 分,总计 0-8 分):
| 维度 | 0 | 1 | 2 |
|---|---|---|---|
| 数据复杂度 | 单表、干净 | 多表、部分空值 | 混乱、多源、类型混杂 |
| 分析深度 | 描述性统计 | 推断性 / 预测性 | 多阶段管道、迭代 |
| 领域特异性 | 通用 / 广为人知 | 需遵循领域惯例 | 需要深入的领域专业知识 |
| 工具广度 | 单个库即可满足 | 需要 2-3 个库 | 完整的 ML 技术栈集成 |
| 总分 | 层级 | 策略 |
|---|---|---|
| 0-2 | 快速 | 单步内联分析 — eda、viz、stats |
| 3-5 | 标准 | 多步工作流 — features、model、experiment、timeseries、anomaly |
| 6-8 | 完整管道 | 编排式 — mlops、复杂的多阶段分析 |
向用户展示评分。用户可以覆盖层级。
模式协议
EDA(快速)
- 如果提供了文件路径,运行:
!uv run python scripts/data-profiler.py "$1" - 解析 JSON 输出 — 展示:行数/列数、数据类型、缺失模式、主要相关性
- 强调:数据质量问题、分布偏斜、潜在的目标泄漏
- 推荐后续步骤:清理、特征工程或建模
模型选择(标准)
- 使用任务 JSON 输入运行:
!uv run python scripts/model-recommender.py - 展示按优先级排序的模型建议及其理由
- 阅读
references/model-selection.md,获取针对不同数据规模和类型的详细指导 - 建议:训练/验证/测试集拆分策略、评估指标、基线方案
特征工程(标准)
- 如果提供了文件路径,先运行数据分析工具进行列分析
- 阅读
references/feature-engineering.md,了解针对不同数据类型的模式 - 加载
data/feature-engineering-patterns.json,获取结构化建议 - 建议:转换、编码、交互特征、特征选择方法
统计分析(快速)
- 使用问题参数运行:
!uv run python scripts/statistical-test-selector.py - 加载
data/statistical-tests-tree.json,获取决策树 - 阅读
references/statistical-tests.md,了解假设条件和解释指南 - 展示:推荐的检验、备选方案、需验证的假设、解释模板
可视化(快速)
- 加载
data/visualization-grammar.json以选择图表类型 - 将数据特征与可视化类型匹配
- 推荐:图表类型、编码通道、调色板、布局
- 用户需要可执行产物时,阅读
references/visualization.md
可视化规划(快速)
- 运行:
!uv run python scripts/viz-planner.py <data> --goal "<goal>" - 解析 JSON — 展示:
goal_category、包含编码和理由的图表列表 - 渲染前确认列映射
可视化渲染(快速)
- 运行:
!uv run python scripts/viz-renderer.py <plan.json> <data> --format png|html - 解析 JSON — 展示输出路径及各图表的错误(如有)
- 报告/仪表板使用 PNG;交互式探索使用 HTML
可视化仪表板(快速)
- 确保配置文件 JSON 已存在(运行
data-profiler.py,并可选择运行data-quality-scorer.py) - 可选:运行可视化规划和渲染,并将
--viz-plan和--render-result传递给构建器 - 运行:
!uv run python scripts/dashboard-builder.py <profile.json> --output <path> - 通过
file://打开输出 HTML — 不要将模板读入上下文 - 查看视图架构请阅读
references/dashboard-design.md
实验设计(标准)
- 阅读
references/experiment-design.md了解 A/B 测试模式 - 设计:假设、指标、样本量(功效分析)、持续时间
- 处理:新奇效应、多重比较、CUPED 方差缩减
- 输出:包含决策标准的实验简报
时间序列(标准)
- 如果输入是文件路径,运行数据分析器以检查时间模式
- 评估:平稳性、季节性、趋势、自相关
- 推荐:分解方法、预测模型、验证策略
- 处理:时间序列交叉验证(滚动前推)、特征滞后
异常检测(标准)
- 分类:点异常、上下文异常、群体异常
- 推荐:算法(Isolation Forest、LOF、DBSCAN、自编码器等)
- 处理:阈值选择、误报管理、可解释性
- 建议:告警策略、根因调查框架
MLOps(完整流程)
- 阅读
references/mlops-maturity.md了解成熟度模型 - 评估当前成熟度等级(0-3)
- 设计:服务策略(批处理或实时)、监控、重新训练触发条件
- 处理:模型版本管理、生产环境 A/B 测试、回滚策略
- 输出:部署架构简报
数据质量评估
运行:!uv run python scripts/data-quality-scorer.py <path>
评分维度:
| 维度 | 权重 | 检查项 |
|---|---|---|
| 完整性 | 25% | 缺失值、空值模式 |
| 一致性 | 20% | 类型统一性、格式违规 |
| 准确性 | 20% | 范围违规、统计异常值 |
| 时效性 | 15% | 过期记录、时间间隔缺失 |
| 唯一性 | 20% | 重复项、近似重复项 |
参考文件索引
| 文件 | 内容 | 何时阅读 |
|---|---|---|
references/statistical-tests.md | 测试选择决策树、假设、解读 | 统计模式 |
references/model-selection.md | 按任务类型、数据量和可解释性需求分类的模型目录 | 模型选择模式 |
references/feature-engineering.md | 按数据类型划分的模式:数值、类别、时间、文本、地理空间 | 特征工程模式 |
references/experiment-design.md | A/B 测试模式、CUPED、功效分析、多重比较校正 | 实验设计模式 |
references/mlops-maturity.md | 成熟度等级 0-3、部署模式、监控策略 | MLOps 模式 |
references/data-quality.md | 质量框架、评分维度、补救策略 | EDA 模式、数据质量评估 |
references/visualization.md | 可视化计划/渲染流程、编码规则、依赖处理 | 可视化计划、可视化渲染、可视化 |
references/dashboard-design.md | 仪表板 JSON 架构、构建器用法、视图选择 | 可视化仪表板 |
加载规则: 每次仅根据“何时阅读”列加载一个参考文件。不要预加载。
关键规则
- 在推荐模型或特征之前,始终先运行数据分析器——没有证据时,绝不要猜测数据特征
- 执行分析前,先展示分类评分——用户必须先看到复杂度等级,并可以进行调整
- 推荐统计检验时,必须说明其假设——未经检验的假设会使结果无效
- 始终在 p 值旁说明效应量——只强调统计显著性而不说明实际意义会造成误导
- 模型推荐必须包含基线模型——始终从最简单的可行模型开始(逻辑回归、线性回归、朴素预测)
- 绝不要跳过训练/测试集划分策略——数据泄漏是最常见的机器学习错误
- 实验设计必须包含功效分析——功效不足的实验会浪费资源
- 特征工程必须处理目标泄漏风险——标记任何基于结果发生后数据衍生的特征
- 时间序列交叉验证必须采用滚动前向法——随机划分会破坏时间顺序
- MLOps 建议必须评估当前成熟度——不要向 Level 0 团队推荐 Level 3 自动化
- 每次仅加载一个参考文件——不要将所有参考文件预加载到上下文中
- 数据质量分数必须通过计算得出,不能估算——对实际数据运行评分脚本
规范术语(全文统一使用以下术语):
- 模式:“EDA”、“Model Selection”、“Feature Engineering”、“Stats”、“Visualization”、“Experiment Design”、“Time Series”、“Anomaly Detection”、“MLOps”
- 等级:“Quick”、“Standard”、“Full Pipeline”
- 质量维度:“Completeness”、“Consistency”、“Accuracy”、“Timeliness”、“Uniqueness”
- MLOps 等级:“Level 0”(手动)、“Level 1”(流水线)、“Level 2”(CI/CD+CT)、“Level 3”(全自动)