【发布时间】:2020-02-11 19:23:18
【问题描述】:
我每天都会提取一些不同的数据集,执行一些简单的数据质量检查,然后在数据集未通过检查时发送电子邮件。
我的检查与检查数据集中的重复项以及检查数据集中的行数和列数是否没有变化一样简单——见下文。
assert df.shape == (1016545, 8)
assert len(df) - len(df.drop_duplicates()) == 0
由于这些数据集每天都会更新并且可能会更改行数,有没有更好的方法来检查而不是硬编码特定的数字?
例如,一个数据集可能只有 400 行,而另一个可能有 200 万行。 我可以说检查昨天的行数的“一个标准偏差”吗?但在这种情况下,我需要开始在单独的表中收集前几天的计数,这可能会变得很难看。
现在,对于每天更改的表格,我正在进行以下基本检查:
assert df.shape[0] <= 1016545 + 100
assert df.shape[0] >= 1016545 - 100
但显然这是不可持续的。
非常感谢任何建议。
【问题讨论】:
标签: python pandas airflow standard-deviation data-quality