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/evidentlyEvidently 是一个开源的 ML/LLM 监控框架内置 100 多个指标可以逐项扫描数据中的缺失值、重复值和异常值。上线后效果变差、报表对不上账时照这份指南跑一遍完整的数据质量检测几分钟就能定位问题。先查数据三个真实场景模型上周还准这周召回率掉了一截——先别怀疑模型看看线上数据的分布是不是变了、字段是不是在悄悄变空财务同学反馈总单量对不上——排查发现一批重复行被重复计入了汇总训练跑得通预测结果却离谱——某个关键特征列在部分数据源里根本就没填值这三类问题指向同一件事模型和业务异常的背后十有八九是数据本身出了问题。Evidently 的检测思路是把「查数据」变成可重复执行的报告声明要查哪些指标、丢进数据、拿到带判定结果的 HTML 报告。环境准备克隆仓库并装好依赖git clone https://gitcode.com/GitHub_Trending/ev/evidently cd evidently pip install -r requirements.min.txt示例直接用仓库自带的客服工单数据 examples/datasets/bookings.csv省去造数据的麻烦。缺失值检测三步完成缺失值指列里的空值NaN、None 等是脏数据里最常见的一种。Evidently 提供两级口径MissingValueCount单列的缺失数量与占比定义在 column_statistics.pyDatasetMissingValueCount整个数据集的缺失总数定义在 dataset_statistics.pyimport pandas as pd from evidently import Report from evidently.metrics import MissingValueCount, DatasetMissingValueCount df pd.read_csv(examples/datasets/bookings.csv) report Report([ DatasetMissingValueCount(), MissingValueCount(columnresolution), ]) report.run(df).save_html(missing_check.html)结果怎么读报告里每个指标是一张带数值的卡片。MissingValueCount会同时给出数量和占比两个数并自动生成默认测试——缺失占比一旦越过阈值卡片直接变红不用你自己去算比例。重复值检测两行声明重复行指所有字段取值完全相同的记录常见于日志重放、ETL 双写。两个指标都在 dataset_statistics.py 中DuplicatedRowCount重复行的数量DuplicatedColumnsCount重复列的数量用于发现冗余特征report Report([ DuplicatedRowCount(), DuplicatedColumnsCount(), ]) report.run(df).save_html(dup_check.html)结果怎么读DuplicatedRowCount的默认测试是「等于 0」——读到 0 就是干净的非 0 即测试失败。如果你有一版已清洗的基准数据把它作为reference_data传进report.run()Evidently 会自动把两版的重复量做相对比较方便追踪趋势。异常值检测用统计量和取值范围筛查异常值是显著偏离整体分布的取值。Evidently 提供两条筛查路径都放在 column_statistics.py统计量筛查MinValue/MaxValue/MeanValue/StdValue/QuantileValue逐个算出来肉眼比对即可发现极端值范围校验InRangeValueCount/OutRangeValueCount按你给定的合法区间计数把「越界」变成明确数字report Report([ MinValue(columnduration), MaxValue(columnduration), OutRangeValueCount(columnduration, range(0, 10000)), ]) report.run(df).save_html(outlier_check.html)结果怎么读统计量类指标在报告里会自动附带一张该列的分布直方图极端值在图上就是那个孤零零的长尾范围校验则直接告诉你有几条记录落界外、越界比例是多少。报告解读HTML 报告看三处save_html()生成的文件用浏览器直接打开即可无需启动任何服务。看报告时抓住三处缺失计数数据集总缺失 关键列的占比红色即超阈值重复行/列计数非 0 就值得追一下数据来源异常统计分布直方图的长尾、OutRangeValueCount的越界数字每个指标卡片自带默认测试判定绿/红等于把「正常范围」也替你定好了。数据是持续流入的话可以把检测接进 Grafana 仪表板做日常监控——仓库里的 examples/grafana/ 给出了完整的 docker-compose 部署示例。进阶技巧预设、行级定位与自定义规则整份数据摘要懒得逐个列指标时直接用 presets/ 下的组合如DataSummaryPreset定义见 dataset_stats.py一次输出数据集级 列级的完整统计按行定位问题RowTestSummary见 row_test_summary.py把测试失败聚合到行维度能直接告诉你是哪几行违规适合脏数据修复自定义检测现有指标不满足业务口径时参照MissingValueCount的写法继承SingleValueMetric并实现对应的 Calculation 类即可注册自己的指标骨架参考 column_statistics.py总结与快速上手清单一句话把「数据质量检查」变成一份声明式的指标报告缺失、重复、异常三类问题各有对应指标结果一眼可读。快速上手清单克隆仓库并安装requirements.min.txt选定数据本例为examples/datasets/bookings.csv用Report声明指标MissingValueCountDuplicatedRowCountOutRangeValueCount运行并save_html打开报告按「缺失 → 重复 → 异常」顺序过一遍红项【免费下载链接】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),仅供参考