From 33be331015e97ded5fd374825e5c80b23cb981ee Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Sun, 6 Oct 2024 17:10:52 +0200 Subject: [PATCH] adding logging for nulls --- rowers/dataroutines.py | 10 +++++++++- rowers/tests/testdata/testdata.tcx.gz | Bin 4001 -> 4001 bytes 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/rowers/dataroutines.py b/rowers/dataroutines.py index 26939338..31d0943e 100644 --- a/rowers/dataroutines.py +++ b/rowers/dataroutines.py @@ -177,7 +177,11 @@ columndict = { 'cumdist': 'cum_dist', } + def remove_nulls_pl(data): + for c in data.columns: + if c=='hr': + dologging('remove_nulls.log',"HR data len {f}".format(f=len(data[c]))) data = data.lazy().with_columns( pl.when( pl.all().is_infinite() @@ -198,6 +202,10 @@ def remove_nulls_pl(data): except: # pragma: no cover pass + for c in data.columns: + if c=='hr': + dologging('remove_nulls.log',"HR data len {f}".format(f=len(data[c]))) + return data @@ -249,7 +257,7 @@ def get_video_data(w, groups=['basic'], mode='water'): df2 = pd.concat([df2, coordinates], axis=1) latitude = df2['latitude'] longitude = df2['longitude'] - boatspeed = (100*df2['velo'].fillna(method='ffill')).astype(int)/100. + boatspeed = (100*df2['velo'].fillna(method='ffill').fillna(method='bfill')).astype(int)/100. # bundle data data = { 'boatspeed': boatspeed.values.tolist(), diff --git a/rowers/tests/testdata/testdata.tcx.gz b/rowers/tests/testdata/testdata.tcx.gz index 23b302f808b9e39807384cf116bdc5f48b473dbc..357abdec8a2a4abc5766c1894e484ddf20dc7425 100644 GIT binary patch literal 4001 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