You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何衡量计算数据质量?求Uniqueness等维度的量化公式

数据质量指标:Uniqueness、Validity、Consistency 量化测量方法示例

1. Uniqueness(唯一性)

衡量数据集是否存在重复记录(基于业务定义的唯一标识,如用户ID、订单号等),核心是统计重复条目占比或有效唯一条目占比。

常用量化公式

  • 唯一性比率:
    唯一性比率 = (总记录数 - 重复记录数) / 总记录数 × 100%
    
  • 唯一键重复率(针对指定唯一标识字段):
    唯一键重复率 = 重复的唯一键条目数 / 总唯一键条目数 × 100%
    

示例

假设用户表有1000条记录,基于user_id统计发现有30条重复条目:

  • 唯一性比率 = (1000 - 30)/1000 ×100% = 97%
  • 唯一键重复率 = 30/1000 ×100% = 3%

实操代码示例(SQL)

-- 统计重复记录数
SELECT COUNT(*) - COUNT(DISTINCT user_id) AS duplicate_count 
FROM user_table;

2. Validity(有效性)

衡量数据是否符合预定义的业务规则(格式、数值范围、枚举值、数据类型等),需根据具体字段的规则定制测量方式。

常用量化公式

根据规则类型分为三类:

  • 格式有效性比率:
    格式有效性比率 = 符合指定格式的记录数 / 总记录数 ×100%
    
  • 范围有效性比率(数值/时间类字段):
    范围有效性比率 = 在允许范围内的记录数 / 总记录数 ×100%
    
  • 枚举有效性比率(固定可选值字段):
    枚举有效性比率 = 属于允许枚举值的记录数 / 总记录数 ×100%
    

示例

  1. 邮箱字段要求符合xxx@xxx.xxx格式,总共有800条记录,其中760条符合规则:
    格式有效性比率 = 760/800 ×100% = 95%
  2. 年龄字段要求18-60岁,总共有1200条记录,其中1116条在范围内:
    范围有效性比率 = 1116/1200 ×100% = 93%

实操代码示例(SQL)

-- 统计符合年龄范围的有效记录数
SELECT COUNT(*) AS valid_age_count 
FROM user_table 
WHERE age BETWEEN 18 AND 60;

-- 统计符合邮箱格式的有效记录数
SELECT COUNT(*) AS valid_email_count 
FROM user_table 
WHERE email REGEXP '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$';

3. Consistency(一致性)

衡量同一实体的数据在不同存储位置(如不同表、不同系统)或同一数据集内的格式/逻辑是否统一,核心是统计匹配一致的条目占比。

常用量化公式

  • 跨实体一致性匹配率:
    一致性匹配率 = 跨存储位置匹配一致的记录数 / 需匹配的总关联记录数 ×100%
    
  • 字段格式一致性比率:
    格式一致性比率 = 符合统一格式的记录数 / 总记录数 ×100%
    

示例

  1. 用户表和订单表各有500条关联记录,其中475条的用户手机号完全一致:
    一致性匹配率 = 475/500 ×100% = 95%
  2. 地址字段要求统一用“省-市-区”格式,总共有600条记录,其中570条符合:
    格式一致性比率 = 570/600 ×100% = 95%

实操代码示例(SQL)

-- 统计用户表与订单表中手机号一致的记录数
SELECT COUNT(*) AS consistent_phone_count 
FROM user_table u
JOIN order_table o ON u.user_id = o.user_id
WHERE u.phone = o.phone;

内容的提问来源于stack exchange,提问作者Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 08:55:56