我刚开始使用 pydeequ,我想为具有约 1800 个功能的 spark 数据框创建检查。现在要知道我必须执行哪些检查,我执行以下操作
suggestionResult = ConstraintSuggestionRunner(spark) \
.onData(df) \
.addConstraintRule(DEFAULT()) \
.run()
在上面我得到了关于我可以对我的数据进行的所有检查的建议。现在目标是2折。
- 我可能想运行由提供的检查
suggestionResult
- 我可能想对一系列功能进行特定检查,例如 NonNegative、Unique 检查。
我完全不确定该怎么做,在尝试了几种方法之后,它仍然不起作用,虽然我知道它当然可以一次运行所有建议检查,但只能在 scala 中看到这个(我需要根据我的观点在 pydeequ 中执行此操作1)
我确实尝试过以下方式,但没有奏效。在重复分析仪上给了我一个错误
check_list = [check.isNonNegative,check.isPositive]
checkResultBuilder = VerificationSuite(spark).onData(df)
for col in sub_cols:
checkResultBuilder = reduce(
lambda vbuilder,checker: vbuilder.addCheck(checker(col)),check_list,checkResultBuilder)
checkResultBuilder.run()