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

Great Expectations条件期望contains实现及row_condition报错求助

Great Expectations SparkDFDataset 条件期望问题解决方案

1. 关于row_condition参数报错的说明

你使用的SparkDFDataset类的期望方法不支持row_condition和condition_parser参数——这两个参数是PandasDataset专属的。解决方式是先通过Spark原生的filter方法筛选出目标数据子集,再在子集上执行期望校验。

2. 实现Condition列的匹配与条件期望

场景1:Condition列严格等于"A"时检查Value不为0

# 筛选符合条件的数据集子集
filtered_subset = df.filter(df.Condition == "A")
# 在子集上执行期望检查
filtered_subset.expect_column_values_to_not_be_in_set(
    column='Value',
    value_set=[0],
    result_format="SUMMARY"
)

场景2:Condition列包含字符串"A"时检查Value不为0

使用Spark的contains方法实现模糊匹配,若需大小写不敏感匹配,可结合lower()/upper()统一字符格式:

# 大小写敏感的包含匹配
filtered_subset = df.filter(df.Condition.contains("A"))

# 大小写不敏感的包含匹配(转为小写后匹配)
filtered_subset = df.filter(df.Condition.lower().contains("a"))

# 执行期望校验
filtered_subset.expect_column_values_to_not_be_in_set(
    column='Value',
    value_set=[0],
    result_format="SUMMARY"
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 11:22:04