From c69dd81d2ddbc5ac2a0596eba26ade02b206265f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Boulogne?= Date: Wed, 23 Apr 2025 09:19:31 +0200 Subject: [PATCH] upd --- labsw/__init__.py | 2 +- labsw/io.py | 19 +++++++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/labsw/__init__.py b/labsw/__init__.py index d8aa3de..12e73d9 100644 --- a/labsw/__init__.py +++ b/labsw/__init__.py @@ -1 +1 @@ -__version__ = '0.1.7.3' +__version__ = '0.1.7.4' diff --git a/labsw/io.py b/labsw/io.py index b1a927b..e80a239 100644 --- a/labsw/io.py +++ b/labsw/io.py @@ -42,12 +42,25 @@ def load_data_RH_logger(filepath, every=1): return df.iloc[::every] -def process_data_RH_logger(filepath, every, diff_period=1_000, SG_window_short=100, SG_window_long=10_000): - df = load_data_RH_logger(filepath, every=1) +def process_data_RH_logger(filepath, every, + median_window=1, + diff_period=1_000, + SG_window_short=100, + SG_window_long=10_000): + + + # We load all the datapoints + df = load_data_RH_logger(filepath, every=1) df = df.drop(columns=['time']) df = df.rename(columns={'duration': 'time'}) + + # Median filter + df['weight'] = df['weight'].rolling(window=median_window, center=True).median() + df = df.dropna(subset=['weight']) + + m0 = df['weight'].iloc[0] mf = df['weight'].tail(300).mean() # Variation @@ -66,6 +79,8 @@ def process_data_RH_logger(filepath, every, diff_period=1_000, SG_window_short=1 h5path = os.path.splitext(filepath)[0] h5path += '-processed.h5' + + # Apply the subset df = df.iloc[::every] df.to_hdf(h5path, key='data')