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

flagger: translation scheme positional->dmp

parent 983189e7
No related branches found
No related tags found
2 merge requests!193Release 1.4,!188Release 1.4
......@@ -245,3 +245,7 @@ class DmpFlagger(CategoricalFlagger):
new._causes = causes
new._comments = comments
return new
@property
def SUSPICIOUS(self):
return FLAGS[-2]
#! /usr/bin/env python
# -*- coding: utf-8 -*-
import json
from copy import deepcopy
import pandas as pd
from dios import DictOfSeries
from saqc.flagger.baseflagger import BaseFlagger, COMPARATOR_MAP
from saqc.lib.tools import assertScalar, toSequence
from saqc.flagger.dmpflagger import DmpFlagger
from saqc.lib.tools import toSequence
FLAGS = ("-1", "0", "1", "2")
......@@ -105,6 +107,22 @@ class PositionalFlagger(BaseFlagger):
data[col_name] = col
return DictOfSeries(data)
def toDmpFlagger(self):
self = PositionalFlagger().initFlags(flags=self._flags)
dmp_flagger = DmpFlagger().initFlags(data=self._flags)
flag_map = {
self.BAD: dmp_flagger.BAD,
self.SUSPICIOUS: dmp_flagger.SUSPICIOUS,
self.GOOD: dmp_flagger.GOOD,
}
for pos_flag, dmp_flag in flag_map.items():
loc = self.isFlagged(flag=pos_flag, comparator="==")
dmp_flagger._flags.aloc[loc] = dmp_flag
dmp_flagger._comments.loc[:] = self._flags.to_df().applymap(lambda v: json.dumps({"flag": v}))
dmp_flagger._causes.loc[:] = "OTHER"
return dmp_flagger
@property
def UNFLAGGED(self):
return FLAGS[0]
......
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