diff --git a/saqc/funcs/scores.py b/saqc/funcs/scores.py index aacc76eb33399decb0bee9869893ee94ca8c893e..5c533d4dccaf8b28bc113e7b76e8349bea6b0872 100644 --- a/saqc/funcs/scores.py +++ b/saqc/funcs/scores.py @@ -527,13 +527,13 @@ class ScoresMixin: d_var = d_var.drop(na_idx, axis=0).values vals = vals.drop(na_idx, axis=0).values - vals_extended = np.array( - list(vals[::-1][-n:]) + list(vals) + list(vals[::-1][:n]) - ) - d_extended = np.array( - list(d_var[:n] + (d_var[0] - d_var[n + 1])) - + list(d_var) - + list(d_var[-n:] + (d_var[-1] - d_var[-n - 1])) + vals_extended = np.pad(vals, n, mode="reflect") + d_extension = n * density + d_extended = np.pad( + d_var, + n, + mode="linear_ramp", + end_values=(d_var[0] - d_extension, d_var[-1] + d_extension), ) LOF_vars = np.array([vals_extended, d_extended]).T