Skip to content
Snippets Groups Projects
Commit 054faa6a authored by David Schäfer's avatar David Schäfer
Browse files

additional parameter to isflagged

parent f618eab8
No related branches found
No related tags found
1 merge request!14WIP: Expose the function parameter 'field' to the config
Pipeline #2580 passed with stage
in 6 minutes and 47 seconds
......@@ -15,8 +15,10 @@ from saqc.core.evaluator.checker import ConfigChecker
from saqc.core.evaluator.transformer import ConfigTransformer
def _dslIsFlagged(flagger, data, flag=None):
return flagger.isFlagged(data.name, flag=flag)
def _dslIsFlagged(flagger, data, flag=None, comparator=None):
if comparator is None:
return flagger.isFlagged(data.name, flag=flag)
return flagger.isFlagged(data.name, flag=flag, comparator=comparator)
def initLocalEnv(data: pd.DataFrame, field: str, flagger: BaseFlagger, nodata: float) -> Dict[str, Any]:
......
......@@ -243,7 +243,14 @@ def test_isflaggedArgument(data, flagger):
var1, iloc=slice(None, None, 2), flag=flagger.BAD
)
idx = _evalDslExpression(f"isflagged({var1}, {flagger.BAD})", data, var2, flagger)
tests = [
(_evalDslExpression(f"isflagged({var1}, BAD)", data, var2, flagger),
flagger.isFlagged(var1, flag=flagger.BAD)
),
(_evalDslExpression(f"isflagged({var1}, UNFLAGGED, '==')", data, var2, flagger),
flagger.isFlagged(var1, flag=flagger.UNFLAGGED, comparator="==")),
]
for result, expected in tests:
assert np.all(result == expected)
flagged = flagger.isFlagged(var1, flag=flagger.BAD)
assert (flagged == idx).all()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment