diff --git a/CHANGELOG.md b/CHANGELOG.md index e68de75c5c64197f5b538a4c9c3380c3125b99f5..1e5b8c7b2eea9ca9c2e38714d5f27c0f28cd63fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,6 @@ SPDX-License-Identifier: GPL-3.0-or-later ### Added - Methods `logicalAnd` and `logicalOr` - `Flags` supports slicing and column selection with `list` or a `pd.Index`. -- added option `limit` to functions `interpolate` and `linear`. ### Changed ### Removed ### Fixed diff --git a/saqc/funcs/interpolation.py b/saqc/funcs/interpolation.py index f4465f9c9da4b831e4effa1e39d1790e0d97f755..9def348d0594a7528536675ff33a3e18aa5e459f 100644 --- a/saqc/funcs/interpolation.py +++ b/saqc/funcs/interpolation.py @@ -287,7 +287,7 @@ class InterpolationMixin: freq: str, method: _SUPPORTED_METHODS, order: int = 2, - limit: int | str | None = 2, + limit: int | None = 2, extrapolate: Literal["forward", "backward", "both"] = None, **kwargs, ) -> "SaQC": diff --git a/saqc/funcs/resampling.py b/saqc/funcs/resampling.py index 4a792cae1f3a30738906f298fa540a888eb39e99..ebc02bd4bf0ad1e890050a42138c8c36fcefa253 100644 --- a/saqc/funcs/resampling.py +++ b/saqc/funcs/resampling.py @@ -40,7 +40,6 @@ class ResamplingMixin: self: "SaQC", field: str, freq: str, - limit: int | str | None = None, **kwargs, ) -> "SaQC": """ @@ -63,30 +62,21 @@ class ResamplingMixin: freq : str An offset string. The frequency of the grid you want to interpolate your data at. - limit : int or str, optional - Upper limit of missing values (with respect to `freq`) to fill. The limit can either be expressed - as the number of consecutive missing values (integer) or temporal extension of the gaps to be filled - (Offset String). - If `None` is passed, no Limit is set. - Returns ------- saqc.SaQC """ - reserved = ["method", "order", "downgrade"] + reserved = ["method", "order", "limit", "downgrade"] kwargs = filterKwargs(kwargs, reserved) - return self.interpolateIndex( - field=field, freq=freq, method="time", limit=limit, **kwargs - ) + return self.interpolateIndex(field, freq, "time", **kwargs) @register(mask=["field"], demask=[], squeeze=[]) def interpolate( self: "SaQC", field: str, freq: str, - method: _SUPPORTED_METHODS = "linear", + method: _SUPPORTED_METHODS, order: int = 1, - limit: int | str | None = None, **kwargs, ) -> "SaQC": """ @@ -116,28 +106,20 @@ class ResamplingMixin: An offset string. The frequency of the grid you want to interpolate your data at. method : {"linear", "time", "nearest", "zero", "slinear", "quadratic", "cubic", "spline", "barycentric", - "polynomial", "krogh", "piecewise_polynomial", "spline", "pchip", "akima"}, default "linear" + "polynomial", "krogh", "piecewise_polynomial", "spline", "pchip", "akima"} The interpolation method you want to apply. order : int, default 1 If your selected interpolation method can be performed at different *orders* - here you pass the desired order. - limit : int or str, optional - Upper limit of missing values (with respect to `freq`) to fill. The limit can either be expressed - as the number of consecutive missing values (integer) or temporal extension of the gaps to be filled - (Offset String). - If `None` is passed, no Limit is set. - Returns ------- saqc.SaQC """ - reserved = ["downgrade"] + reserved = ["limit", "downgrade"] kwargs = filterKwargs(kwargs, reserved) - return self.interpolateIndex( - field=field, freq=freq, method=method, limit=limit, order=order, **kwargs - ) + return self.interpolateIndex(field, freq, method=method, order=order, **kwargs) @register(mask=["field"], demask=[], squeeze=[]) def shift(