From f63567c81326840d72cd1439a701ccbd7119f5b7 Mon Sep 17 00:00:00 2001 From: Raphael <raphael.sturgis@gmail.com> Date: Thu, 18 Nov 2021 15:19:00 +0100 Subject: [PATCH] multi column operations --- skais/ais/ais_trajectory.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/skais/ais/ais_trajectory.py b/skais/ais/ais_trajectory.py index c4286bf..7b504a0 100644 --- a/skais/ais/ais_trajectory.py +++ b/skais/ais/ais_trajectory.py @@ -26,7 +26,12 @@ def compute_trajectory(times, time_gap): def apply_func_on_window(dat, func, radius, on_edge='copy'): result = np.zeros(dat.shape) if on_edge == 'copy': - dat = np.concatenate([np.repeat(dat[0], radius), dat, np.repeat(dat[-1], radius)]) + if len(dat.shape) == 1: + dat = np.concatenate([np.full(radius, dat[0]), dat, np.full(radius, dat[-1])]) + else: + dat = np.concatenate([np.repeat(np.array(dat[0]).reshape((1, len(dat[0]))), radius, axis=0), + dat, + np.repeat(np.array(dat[-1]).reshape((1, len(dat[-1]))), radius, axis=0)]) for i in range(radius, dat.shape[0] - radius): data = dat[i - radius:i + radius + 1] result[i - radius] = func(data) -- GitLab