From 055f70ff40a6af2e88fc7338ff78bd24b73bfcbd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Sch=C3=A4fer?= <david.schaefer@ufz.de> Date: Tue, 19 Jan 2021 16:19:42 +0100 Subject: [PATCH] constants: type hints --- saqc/funcs/constants.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/saqc/funcs/constants.py b/saqc/funcs/constants.py index a00ee55a2..03f4a6e2e 100644 --- a/saqc/funcs/constants.py +++ b/saqc/funcs/constants.py @@ -1,16 +1,21 @@ #! /usr/bin/env python # -*- coding: utf-8 -*- +from typing import Tuple + import numpy as np import pandas as pd +from dios import DictOfSeries + from saqc.core.register import register +from saqc.flagger.baseflagger import BaseFlagger from saqc.lib.ts_operators import varQC from saqc.lib.tools import retrieveTrustworthyOriginal, customRoller @register(masking='field') -def flagConstants(data, field, flagger, thresh, window, **kwargs): +def flagConstants(data: DictOfSeries, field: str, flagger: BaseFlagger, thresh: float, window: str, **kwargs) -> Tuple[DictOfSeries, BaseFlagger]: """ This functions flags plateaus/series of constant values of length `window` if their maximum total change is smaller than thresh. @@ -66,8 +71,10 @@ def flagConstants(data, field, flagger, thresh, window, **kwargs): @register(masking='field') def flagByVariance( - data, field, flagger, window="12h", thresh=0.0005, max_missing=None, max_consec_missing=None, **kwargs -): + data: DictOfSeries, field: str, flagger: BaseFlagger, + window: str="12h", thresh: float=0.0005, + max_missing: int=None, max_consec_missing: int=None, **kwargs +) -> Tuple[DictOfSeries, BaseFlagger]: """ Function flags plateaus/series of constant values. Any interval of values y(t),..y(t+n) is flagged, if: @@ -111,7 +118,6 @@ def flagByVariance( max_missing = np.inf if max_consec_missing is None: max_consec_missing = np.inf - min_periods = int(np.ceil(pd.Timedelta(window) / pd.Timedelta(data_rate))) plateaus = dataseries.rolling(window=window, min_periods=min_periods).apply( -- GitLab