Skip to content
Snippets Groups Projects
Commit 8af7adb2 authored by Bert Palm's avatar Bert Palm 🎇
Browse files

removed iterable support

parent 1e5d48c4
No related branches found
No related tags found
1 merge request!218Flags
Pipeline #17538 passed with stage
in 6 minutes and 26 seconds
...@@ -6,16 +6,14 @@ import dios ...@@ -6,16 +6,14 @@ import dios
from saqc.common import * from saqc.common import *
from saqc.flagger.history import History from saqc.flagger.history import History
import pandas as pd import pandas as pd
from typing import Union, Dict, DefaultDict, Iterable, Tuple, Optional, Type from typing import Union, Dict, DefaultDict, Optional, Type
_KEY = str
_VAL = Union[pd.Series, History] _VAL = Union[pd.Series, History]
_DictLike = Union[ DictLike = Union[
pd.DataFrame, pd.DataFrame,
dios.DictOfSeries, dios.DictOfSeries,
Dict[_KEY, _VAL], Dict[str, _VAL],
DefaultDict[_KEY, _VAL], DefaultDict[str, _VAL],
Iterable[Tuple[_KEY, _VAL]]
] ]
...@@ -63,7 +61,7 @@ class Flags: ...@@ -63,7 +61,7 @@ class Flags:
make a df -> flags.to_frame() make a df -> flags.to_frame()
""" """
def __init__(self, raw_data: Optional[Union[_DictLike, Flags]] = None, copy: bool = False): def __init__(self, raw_data: Optional[Union[DictLike, Flags]] = None, copy: bool = False):
if raw_data is None: if raw_data is None:
raw_data = {} raw_data = {}
...@@ -88,12 +86,7 @@ class Flags: ...@@ -88,12 +86,7 @@ class Flags:
""" """
result = {} result = {}
for obj in data: for k, item in data.items():
if isinstance(obj, tuple):
k, item = obj
else:
k, item = obj, data[obj]
if k in result: if k in result:
raise ValueError('raw_data must not have duplicate keys') raise ValueError('raw_data must not have duplicate keys')
...@@ -267,7 +260,7 @@ class Flags: ...@@ -267,7 +260,7 @@ class Flags:
return str(self.to_dios()).replace('DictOfSeries', type(self).__name__) return str(self.to_dios()).replace('DictOfSeries', type(self).__name__)
def init_flags_like(reference: Union[pd.Series, _DictLike, Flags], initial_value: float = UNFLAGGED) -> Flags: def init_flags_like(reference: Union[pd.Series, DictLike, Flags], initial_value: float = UNFLAGGED) -> Flags:
""" """
Create empty Flags, from an reference data structure. Create empty Flags, from an reference data structure.
...@@ -301,13 +294,7 @@ def init_flags_like(reference: Union[pd.Series, _DictLike, Flags], initial_value ...@@ -301,13 +294,7 @@ def init_flags_like(reference: Union[pd.Series, _DictLike, Flags], initial_value
if isinstance(reference, pd.Series): if isinstance(reference, pd.Series):
reference = reference.to_frame('f0') reference = reference.to_frame('f0')
for obj in reference: for k, item in reference.items():
# unpack
if isinstance(obj, tuple):
k, item = obj
else:
k, item = obj, reference[obj]
if not isinstance(k, str): if not isinstance(k, str):
raise TypeError(f"cannot use {k} as key, currently only string keys are allowed") raise TypeError(f"cannot use {k} as key, currently only string keys are allowed")
......
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