From 1e5d48c460387ec39af2335f771f9d2dfe77dd7d Mon Sep 17 00:00:00 2001 From: Bert Palm <bert.palm@ufz.de> Date: Fri, 12 Feb 2021 21:35:07 +0100 Subject: [PATCH] Apply 7 suggestion(s) to 2 file(s) --- saqc/common.py | 2 +- saqc/flagger/flags.py | 26 +++++++------------------- 2 files changed, 8 insertions(+), 20 deletions(-) diff --git a/saqc/common.py b/saqc/common.py index 9f73c1b23..71d4cbb06 100644 --- a/saqc/common.py +++ b/saqc/common.py @@ -5,5 +5,5 @@ from numpy import nan as _nan UNTOUCHED = _nan UNFLAGGED = 0 DOUBTFUL = 25 -BAD = 99 +BAD = 255 diff --git a/saqc/flagger/flags.py b/saqc/flagger/flags.py index cc97bf423..40b4f4802 100644 --- a/saqc/flagger/flags.py +++ b/saqc/flagger/flags.py @@ -72,7 +72,6 @@ class Flags: raw_data = raw_data._data # with python 3.7 dicts are insertion-ordered by default - self._data: Dict[str, History] self._data = self._init_from_raw(raw_data, copy) # this is a simple cache that reduce the calculation of the flags @@ -117,7 +116,7 @@ class Flags: @property def _constructor(self) -> Type['Flags']: - return Flags + return type(self) # ---------------------------------------------------------------------- # mata data @@ -143,7 +142,7 @@ class Flags: _data, _cache = {}, {} for old, new in zip(self.columns, value): - _data[new] = self._data.pop(old) + _data[new] = self._data[old] if old in self._cache: _cache[new] = self._cache[old] @@ -179,13 +178,10 @@ class Flags: return if key not in self._data: - hist = History() - - else: - hist = self._data[key] - - hist.append(value, force=force) - self._cache.pop(key, None) + self._data[key] = History() + + self._data[key].append(value, force=force) + self._cache.pop(key, None) def force(self, key: str, value: pd.Series) -> Flags: """ @@ -209,7 +205,7 @@ class Flags: return self def __delitem__(self, key): - del self._data[key] + self._data.pop(key) self._cache.pop(key, None) def drop(self, key: str): @@ -328,11 +324,3 @@ def init_flags_like(reference: Union[pd.Series, _DictLike, Flags], initial_value return Flags(result) - -if __name__ == '__main__': - from dios import example_DictOfSeries - - f = init_flags_like(example_DictOfSeries(), initial_value=-3.) - print(f) - print(Flags()) - print(Flags(example_DictOfSeries().astype(float))) -- GitLab