From a6f04a4e97a3665083a96cfe19eba8364a372081 Mon Sep 17 00:00:00 2001 From: Peter Luenenschloss <peter.luenenschloss@ufz.de> Date: Thu, 5 Dec 2019 16:03:45 +0100 Subject: [PATCH] Update FunctionDescriptions.md --- docs/FunctionDescriptions.md | 53 ++++++++++++++++++++++++++++++------ 1 file changed, 45 insertions(+), 8 deletions(-) diff --git a/docs/FunctionDescriptions.md b/docs/FunctionDescriptions.md index bf194ba7c..506b84bae 100644 --- a/docs/FunctionDescriptions.md +++ b/docs/FunctionDescriptions.md @@ -627,17 +627,54 @@ Key word overview: `inter_method`: 1. Shifts: - * `"fshift"`: - * `"bshift"`: - * `"nearest_shift"`: + * `"fshift"`: every grid point gets assigned its ultimately preceeding value - if there is one available in the preceeding sampling interval. + * `"bshift"`: every grid point gets assigned its first succeeding value - if there is one available in the succeeding sampling interval. + * `"nearest_shift"`: every grid point gets assigned the nearest value in its range. ( range = +/- `freq`/2 ). 2. Aggregations: - * `"fagg"`: - * `"bagg"`: - * `"nearest_agg"`: + * `"fagg"`: all values in a sampling interval get aggregated with the function passed to `agg_method` + , and the result gets assigned to the last grid point. + * `"bagg"`: all values in a sampling interval get aggregated with the function passed to `agg_method` + , and the result gets assigned to the next grid point. + * `"nearest_agg"`: all values in the range (+/- freq/2) of a grid point get + aggregated with the function passed to agg_method and assigned to it. + 3. Interpolations: - * + * There are available all the interpolation methods from the pandas.interpolate() method and they can be reffered to with + the very same keywords, that you would pass to pd.Series.interpolates's method parameter. + * Available interpolations: ´"linear"´, ´"time"´, ´"nearest"´, ´"zero"´, ´"slinear"´, + ´"quadratic"´, ´"cubic"´, ´"spline"´, ´"barycentric"´, ´"polynomial"´, ´"krogh"´, + ´"piecewise_polynomial"´, ´"spline"´, ´"pchip"´, ´"akima"´. + * If a selected interpolation method needs to get passed an order of + interpolation, it will get passed the order, passed to `inter_order`. + * Note, that ´"linear"´ does not refer to timestamp aware, linear + interpolation, but will equally weight every period, no matter how great + the covered time gap is. Instead, a timestamp aware, linear interpolation is performed + upon ´"time"´ passed as keyword. + * Be careful with pd.Series.interpolate's `"nearest"` and `"pad"`: + To just fill grid points forward/backward or from the nearest point - and + assign grid points, that refer to missing data, a nan value, the use of `"fshift"`, `"bshift"` and `"nearest_shift"` is + recommended, to ensure getting the result expected. (The methods diverge in some + special cases and do not properly interpolate grid-only.). + + +`reshape_method` - (format currently broken - will solve tomorrow!) + + * `"fshift"`/`"'bshift"`: forward/backward projection. Only the very + first/last flag will be projected onto the last/next grid point. + Extra flag fields like "comment", just get shifted along with the flag. + Only inserted flags for empty intervals will take the **kwargs argument. + Set "`set_shift_comment`"" to `True`, to apply kwargs** to all flags. + * `"fagg"`/`"bagg"`:All flags, referring to a sampling intervals measurements get aggregated forward/backward + with the agg_method selected. + + * `"nearest_shift"`: Every grid point gets assigned the nearest flag in its range + (range = grid_point +/-(`"freq"`/2)).Extra flag fields like comment, + just get shifted along with the flag. Only inserted flags for empty intervals will take the + **kwargs argument. + * `"nearest_agg"`: Every grid point gets assigned the aggregation (generated by the function passed to `agg_method`), + of all the flags in its range. + -`reshape_method`: -- GitLab