diff --git a/rowers/datautils.py b/rowers/datautils.py index 34c13421..556e1a96 100644 --- a/rowers/datautils.py +++ b/rowers/datautils.py @@ -215,6 +215,17 @@ def getcp(dfgrouped,logarr): tt = group['time'].copy() ww = group['power'].copy() + # Remove data where PM is repeating final power value + # of an interval during the rest + rolling_std = ww.rolling(window=4).std() + deltas = tt.diff() + + mask = rolling_std == 0 + ww.loc[mask] = 0 + + mask = deltas > 20. + ww.loc[mask] = 0 + tmax = tt.max()