news 2026/9/20 9:16:21

Evidently 数据质量检测:一次筛查缺失、重复与异常值,三步出报告

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Evidently 数据质量检测:一次筛查缺失、重复与异常值,三步出报告

Evidently 数据质量检测:一次筛查缺失、重复与异常值,三步出报告

【免费下载链接】evidentlyEvidently is ​​an open-source ML and LLM observability framework. Evaluate, test, and monitor any AI-powered system or data pipeline. From tabular data to Gen AI. 100+ metrics.项目地址: https://gitcode.com/GitHub_Trending/ev/evidently

Evidently 是一款开源的 ML 与 LLM 系统评估监控框架,它的数据质量检测模块能帮你在一次运行中扫出缺失值、重复行列和异常值,并通过三步操作生成可视化报告。下面的流程适合刚接触它的新手直接照做。

从一次"翻车"说起

昨晚批处理跑完 200 万行,今早模型效果突然跳水——排查半天才发现关键字段有 8% 是空的,还有两列数据完全重复。这类问题靠人肉抽查很难发现,你需要的是一轮固定流程:每次数据进来,先自动扫一遍质量。

Evidently 就是干这个的:它是面向 ML 模型和 LLM 应用的开源评估与监控框架,数据质量检测是其中最基础的一块能力——输入一张 pandas 表,输出带统计值、分布图和通过/失败判断的报告。

三类问题,一张表看懂能查什么

Evidently 把质量检查拆成一个个"指标"(Metric),你按需组合就行。缺失值、重复值、异常值这三类常见问题,对应的指标大致是这些:

问题类型可用指标你会得到什么
缺失值MissingValueCountDatasetMissingValueCount每列缺失数与缺失占比,以及全表缺失总量
重复值DuplicatedRowCountDuplicatedColumnsCountAlmostDuplicatedColumnsCountConstantColumnsCount完全重复的行数、重复列数、近似重复列数、恒值列数
异常值MinValue/MaxValue/MeanValue/StdValue/QuantileValueOutRangeValueCount每列完整统计量 + 分布图,或"超出合理范围"的值有多少

说明两点:

  • 重复值检查不止"完全一样"这一种。AlmostDuplicatedColumnsCount能抓出几乎重复的列(通常意味着特征冗余),ConstantColumnsCount能抓出整列只有一个取值的列。
  • 异常值没有一键"异常点"指标,而是靠统计量帮你定位:中位数和 25/75 分位数拉开得很大,或者OutRangeValueCount(指定范围外的值)数量偏高,都说明该列值得细看。

这些指标分别实现在 src/evidently/metrics/column_statistics.py 和 src/evidently/metrics/dataset_statistics.py,想深入可以看源码,但日常使用不需要碰它们。

最小可运行检测脚本:准备数据、配置检测、出报告

整条流水线只有三步,代码如下(中文注释版):

import pandas as pd from evidently import Report from evidently.presets import DataSummaryPreset # 第一步:准备数据(换成你自己的表) df = pd.read_csv("your_data.csv") # 第二步:配置检测。DataSummaryPreset 一键打包了 # 全表统计(行数、重复行列、缺失总量)+ 每列统计(缺失数、min/max/均值/分位数等) report = Report([DataSummaryPreset()]) # 第三步:运行并生成报告 snapshot = report.run(df) snapshot.save_html("data_quality_report.html")

跑完后用浏览器打开data_quality_report.html,每个指标都有当前值、分布图,以及默认的通过/失败判断(比如"重复行数应为 0",不满足就标红)。

想只看某几列,把预设改成DataSummaryPreset(columns=["age", "city"])即可;想看单列详细统计,也可以单独用ValueStats(column="age")

进阶:自定义规则、对比参考数据和接入监控

  • 自定义检测规则:每个指标都支持tests参数,用业务语言写判断条件。例如给缺失值设上限:DatasetStats(dataset_missing_value_count_tests=lt(100)),超过 100 个缺失就判失败。规则细节可以参考 src/evidently/presets/dataset_stats.py。
  • 和参考数据对比report.run(current, reference)传两张表,报告会自动做并列对比,还能顺手检测数据漂移(分布变了没有),适合"上线前 vs 上线后"这类场景。
  • 接进日常监控:检测结果可以定时跑、存下来看趋势,也可以推到 Grafana 之类的看板里,配合告警用。Evidently 官方示例里就有现成的 Grafana 数据漂移仪表板(见 examples/grafana/):

  • 接入工作流:把上面那段脚本放进 CI 或批处理任务,数据一进库就自动质检,失败即拦截,就能把"翻车"挡在生产之前。

什么时候该用它

给你一份简单的自检清单,满足任意一条就值得跑一轮 Evidently 检测:

  • 数据来自外部采集、第三方接口或用户上传,来源不可控
  • 表结构近期改过,字段有增删
  • 模型效果突然变差,但代码没动过
  • 需要给数据交接方(下游团队、合作方)留一份可核查的质量凭证
  • 同一份数据被多个模型/任务复用,坏数据影响面大

反过来,如果你只是临时看一眼小样本,df.describe()df.duplicated().sum()就够了,不用上完整报告。数据质量检查的关键不在工具多复杂,而在于它是否变成了一道固定的流程——这一步 Evidently 能替你兜住。

【免费下载链接】evidentlyEvidently is ​​an open-source ML and LLM observability framework. Evaluate, test, and monitor any AI-powered system or data pipeline. From tabular data to Gen AI. 100+ metrics.项目地址: https://gitcode.com/GitHub_Trending/ev/evidently

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/20 9:15:46

NRF24L01 C51工程实战:SPI时序与寄存器配置详解

简介:面向C51单片机开发者的NRF24L01无线通信实现方案,基于2.4GHz频段,覆盖SPI接口配置、收发模式切换、数据管道监听与中断处理等关键环节,适用于智能家居、遥控系统等短距离通信场景。包体共12个文件,包含C源文件、h…

作者头像 李华
网站建设 2026/9/20 9:14:30

AssetRipper使用笔记:三步提取Unity游戏资产并导出为工程格式

AssetRipper使用笔记:三步提取Unity游戏资产并导出为工程格式 【免费下载链接】AssetRipper GUI application to analyze game files 项目地址: https://gitcode.com/GitHub_Trending/as/AssetRipper AssetRipper 是一款带图形界面的 Unity 游戏文件分析工具…

作者头像 李华
网站建设 2026/9/20 9:10:46

如何构建安全合规的本地软件资源索引系统

我无法根据您提供的项目标题生成符合要求的博文内容。原因如下:标题中包含的域名a.77x.cc及路径/click.php属于典型的第三方跳转链接或短链服务,常见于广告分发、流量劫持、诱导点击等非规范网络行为;“IT猫扑网”为已停止运营多年的早期中文…

作者头像 李华
网站建设 2026/9/20 9:10:34

MATLAB感官数据分析实战:方差分析与聚类分级

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/20 9:09:26

AI表情生成系统:多模态情感分析与个性化设计

1. 项目背景与核心价值最近在指导计算机专业学生的毕业设计时,发现一个特别有意思的选题——基于AI的个性化表情生成系统。这个项目完美结合了当下最热门的AI技术和年轻人日常高频使用的表情包文化,既有技术深度又有实用价值。表情包作为现代网络交流的&…

作者头像 李华