Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问clear审计通过

data-validation-reporter数据验证记者

Agent Skill

用于辅助数据整理、表格处理、CSV/Excel 分析、指标计算和图表准备。它适合让 Agent 清洗字段、汇总数据、发现异常、生成统计口径或把分析结果转成可读说明。使用时需要确认数据来源、字段含义和时间范围,避免把样本数据当全量事实;涉及敏感数据、导出文件或批量写回时,应先确认权限和脱敏边界。

总安装

539

周安装

22

GitHub Stars

8

下载量

174
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:data-validation-reporter(数据验证记者)
来源仓库:https://github.com/vamseeachanta/workspace-hub
仓库路径:skills/data-validation-reporter
安装命令:
npx skills add https://github.com/vamseeachanta/workspace-hub --skill data-validation-reporter
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/vamseeachanta/workspace-hub --skill data-validation-reporter

简介

实现配置化的数据校验与交互式可视化报告生成。

  • 支持 YAML 规则定义、质量评分和缺失/类型分析图表。
  • 提供四面板 Plotly 仪表板展示关键指标与异常分布。
  • 需准备结构化输入数据并配置验证参数方可运行。
  • data-validation-reporter 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Data Validation Reporter Skill

Overview

This skill provides a complete data validation and reporting workflow:

  • Data validation with configurable quality rules
  • Interactive Plotly reports with 4-panel dashboards
  • YAML configuration for validation parameters
  • Quality scoring (0-100 scale)
  • Missing data analysis with visualizations
  • Type checking with automated detection

Pattern Analysis

Discovered from commit: 47b64945 (digitalmodel) Original file: src/data_procurement/validators/data_validator.py Reusability score: 80/100

Patterns used:

  • plotly_viz (interactive dashboards)
  • pandas_processing (DataFrame validation)
  • data_validation (quality scoring)
  • yaml_config (configuration loading)
  • logging (structured logging)

Core Capabilities

1. Data Validation

validator = DataValidator(config_path="config/validation.yaml")
results = validator.validate_dataframe(
    df=data,
    required_fields=["id", "value", "timestamp"],
    unique_field="id"
)

Validation checks:

  • Empty DataFrame detection
  • Required field verification
  • Missing data analysis (per-column percentages)
  • Duplicate detection
  • Data type validation
  • Numeric field validation

2. Quality Scoring Algorithm

Score calculation (0-100 scale):

  • Base score: 100
  • Missing required fields: -20
  • High missing data (>50%): -30
  • Moderate missing data (>20%): -15
  • Duplicate records: -2 per duplicate (max -20)
  • Type issues: -5 per issue (max -15)

Status thresholds:

  • ✅ PASS: score ≥ 60
  • ❌ FAIL: score < 60

3. Interactive Reporting

4-Panel Plotly Dashboard:

  1. Quality Score Gauge - Color-coded indicator (green/yellow/red)
  2. Missing Data Chart - Bar chart showing missing % per column
  3. Type Issues Chart - Bar chart of validation errors
  4. Summary Table - Key metrics overview

Features:

  • Responsive design
  • Interactive hover tooltips
  • Zoom and pan controls
  • Export to PNG/SVG
  • CDN-based Plotly (no local dependencies)

4. YAML Configuration

# config/validation.yaml
validation:
  required_fields:
    - id
    - timestamp
    - value

  unique_fields:
    - id

  numeric_fields:
    - year_built
    - length_m
    - displacement_tonnes

  thresholds:
    max_missing_pct: 0.2  # 20%
    min_quality_score: 60
    max_duplicates: 0

Usage

Basic Validation

from data_validator import DataValidator
import pandas as pd

# Initialize with config
validator = DataValidator(config_path="config/validation.yaml")

# Load data
df = pd.read_csv("data/input.csv")

# Validate
results = validator.validate_dataframe(
    df=df,
    required_fields=["id", "name", "value"],
    unique_field="id"
)

# Check results
if results['valid']:
    print(f"✅ PASS - Quality Score: {results['quality_score']:.1f}/100")
else:
    print(f"❌ FAIL - Issues: {len(results['issues'])}")
    for issue in results['issues']:
        print(f"  - {issue}")

Generate Interactive Report

from pathlib import Path

# Generate HTML report
validator.generate_interactive_report(
    validation_results=results,
    output_path=Path("reports/validation_report.html")
)

print("📊 Interactive report saved to reports/validation_report.html")

Text Report

# Generate text summary
text_report = validator.generate_report(results)
print(text_report)

Files Included

data-validation-reporter/
├── SKILL.md                    # This file
├── validator_template.py       # Validator class template
├── config_template.yaml        # YAML configuration template
├── example_usage.py            # Example implementation
└── README.md                   # Quick reference

Integration

Add to Existing Project

  1. Copy validator template:
cp validator_template.py src/validators/data_validator.py
  1. Create configuration:
cp config_template.yaml config/validation.yaml
# Edit config/validation.yaml with your validation rules
  1. Install dependencies:
uv pip install pandas plotly pyyaml
  1. Use in pipeline:
from src.validators.data_validator import DataValidator

validator = DataValidator(config_path="config/validation.yaml")
results = validator.validate_dataframe(df)
validator.generate_interactive_report(results, Path("reports/output.html"))

Customization

Extend Validation Rules

class CustomValidator(DataValidator):
    def _check_business_rules(self, df: pd.DataFrame) -> List[str]:
        """Add custom business logic validation."""
        issues = []

        # Example: Check date ranges
        if 'start_date' in df.columns and 'end_date' in df.columns:
            invalid_dates = (df['end_date'] < df['start_date']).sum()
            if invalid_dates > 0:
                issues.append(f'{invalid_dates} records with end_date before start_date')

        return issues

Custom Visualizations

# Add 5th panel to dashboard
fig = make_subplots(
    rows=3, cols=2,
    specs=[
        [{'type': 'indicator'}, {'type': 'bar'}],
        [{'type': 'bar'}, {'type': 'table'}],
        [{'type': 'scatter', 'colspan': 2}, None]  # New panel
    ]
)

# Add custom plot
fig.add_trace(
    go.Scatter(x=df['date'], y=df['quality_score'], name='Quality Trend'),
    row=3, col=1
)

Performance

Benchmarks (tested on 100,000 row dataset):

  • Validation: ~2.5 seconds
  • Report generation: ~1.2 seconds
  • Total: ~3.7 seconds

Memory usage: ~150MB for 100k rows

Scalability:

  • Tested up to 1M rows
  • Linear scaling for validation
  • Report generation optimized with sampling for large datasets

Best Practices

  1. Configuration Management:

- Store validation rules in YAML (version controlled) - Use environment-specific configs (dev/staging/prod) - Document validation thresholds

  1. Logging:

- Enable DEBUG level during development - Use INFO level in production - Log all validation failures

  1. Reporting:

- Generate reports for all production data loads - Archive reports with timestamps - Include reports in data lineage

  1. Quality Gates:

- Set minimum quality score thresholds - Block pipelines on validation failures - Alert on quality degradation

Dependencies

pandas>=1.5.0
plotly>=5.14.0
pyyaml>=6.0

Related Skills

  • csv-data-loader - Load and preprocess CSV data
  • plotly-dashboard - Advanced dashboard creation
  • data-quality-monitor - Continuous quality monitoring

Examples

See example_usage.py for complete working examples:

  • Basic validation workflow
  • Custom validation rules
  • Batch validation (multiple files)
  • Quality trend analysis
  • Integration with data pipelines

Change Log

v1.0.0 (2026-01-07)

  • Initial skill creation from production code
  • 4-panel Plotly dashboard
  • YAML configuration support
  • Quality scoring algorithm
  • Missing data and type validation

License

Part of workspace-hub skill library. See root LICENSE.

Support

For issues or enhancements, see workspace-hub issue tracker.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

27.87%
按下载量换算48

windsurf

23.33%
按下载量换算41

trae

20.04%
按下载量换算35

OpenCode

14.69%
按下载量换算26

Cursor

8.25%
按下载量换算14

Codex

4%
按下载量换算7

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills