如何运行 Great Expectations 对多个列的期望?

How to run Great Expectations expectations on multiple columns?

我想使用 Great Expectations testing suite to run the same validations on many columns. I see that there's a closed feature request 将其作为内置期望,但这可以通过对列名进行 for 循环来完成吗?

此外,我需要过滤要测试的列——我正在使用不同的 classes id 训练各种计算机视觉模型,所以我需要 select 所有对应于 [= 的列16=]ids.

不幸的是,如果您在文档中搜索 filter(),则没有任何记录,但是如果您检查 type(batch),您会发现它是 great_expectations.dataset.pandas_dataset.PandasDatasetaccording to the docs 子类 pandas.DataFrame.

因此,您可以像使用常规数据框一样过滤列,使用 batch.filter() 和 运行 列上的 for 循环:

不过有一个陷阱:您不能 运行 直接在过滤后的 DataFrame 上进行期望;相反,您必须 运行 对原始 batch 数据集的期望,否则当您尝试 filtered_df.save_expectation_suite()

时会出错