From 45318261188e7c9cc2da7c06fd1df4d8fe96b2ee Mon Sep 17 00:00:00 2001 From: Gaelle Date: Wed, 7 Jun 2023 17:07:00 +0200 Subject: [PATCH] new test set --- src/neurodsp/waveforms.py | 6 ++++-- .../fixtures/waveform_sample/test_arr_in.npy | Bin 77568 -> 116288 bytes .../waveform_sample/test_arr_peak.npy | Bin 2064 -> 3032 bytes .../cpu/fixtures/waveform_sample/test_df.csv | 12 +++++++----- .../waveform_sample/test_df_wavinfo.csv | 2 ++ 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/neurodsp/waveforms.py b/src/neurodsp/waveforms.py index 07c1861..42314f7 100644 --- a/src/neurodsp/waveforms.py +++ b/src/neurodsp/waveforms.py @@ -199,6 +199,8 @@ def find_tip_trough(arr_peak, arr_peak_real, df): df_rows = df_rows.drop(['trough_time_idx', 'trough_val'], axis=1) # Create mini arr_peak for those rows uniquely (take the real waveforms value in, not inverted ones) arr_peak_rows = arr_peak_real[df_index, :] + # Place into "inverted" array peak for return + arr_peak[df_index, :] = arr_peak_rows # Get new sign for the peak arr_peak_rows, df_rows = invert_peak_waveform(arr_peak_rows, df_rows) # New trough @@ -210,7 +212,7 @@ def find_tip_trough(arr_peak, arr_peak_real, df): # Find tip df = find_tip(arr_peak, df) - return df + return df, arr_peak def plot_peaktiptrough(df, arr, ax, nth_wav=0, plot_grey=True): @@ -479,7 +481,7 @@ def compute_spike_features(arr_in, fs=30000, recovery_duration_ms=0.16, return_p # Invert positive spikes arr_peak, df = invert_peak_waveform(arr_peak_real.copy(), df) # Copy otherwise overwrite the variable in memory # Tip-trough (this also computes the peak_to_trough_ratio) - df = find_tip_trough(arr_peak, arr_peak_real, df) + df, arr_peak = find_tip_trough(arr_peak, arr_peak_real, df) # Peak to trough duration df = peak_to_trough_duration(df, fs=30000) # Half peak points diff --git a/src/tests/unit/cpu/fixtures/waveform_sample/test_arr_in.npy b/src/tests/unit/cpu/fixtures/waveform_sample/test_arr_in.npy index b0a5c266b7545d4d8102048d775b17e456873d88..f28497b528a89237646c8a26c2a49fac2950bc74 100644 GIT binary patch delta 39042 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 KG(o%LWYW7QVc=H) delta 12 Tcmca1K0#oDEu+asyG!f<9k&Ep diff --git a/src/tests/unit/cpu/fixtures/waveform_sample/test_df.csv b/src/tests/unit/cpu/fixtures/waveform_sample/test_df.csv index ef86f31..3f2570b 100644 --- a/src/tests/unit/cpu/fixtures/waveform_sample/test_df.csv +++ b/src/tests/unit/cpu/fixtures/waveform_sample/test_df.csv @@ -1,5 +1,7 @@ -,peak_trace_idx,peak_time_idx,peak_val,invert_sign_peak,trough_time_idx,trough_val,tip_time_idx,tip_val,half_peak_post_time_idx,half_peak_pre_time_idx,half_peak_post_val,half_peak_pre_val,half_peak_duration,recovery_time_idx,recovery_val,depolarisation_slope,repolarisation_slope,recovery_slope -0,20,44,-4.883662,1.0,54,1.2735074,24,0.77733666,47,40,-1.9125216,-1.7436237,0.00023333333333333333,59,0.98473907,-8491.498231887817,18471.508026123047,-1732.609748840332 -1,20,45,5.153482,-1.0,69,-1.0805972,41,-2.9835296,49,43,2.1435728,2.3065486,0.0002,74,-0.9415057,61027.586460113525,-7792.599201202393,834.5489501953125 -2,20,44,-4.48732,1.0,54,1.5353007,39,0.71306074,48,42,-1.6273819,-2.058325,0.0002,59,0.7605876,-31202.284812927246,18067.862033843994,-4648.2789516448975 -3,20,40,1.8537197,-1.0,61,-0.49219757,23,-0.66024184,46,38,0.7720857,0.6908671,0.0002666666666666667,66,-0.35654825,4436.402741600485,-3351.310321262905,813.8959407806396 +,peak_trace_idx,peak_time_idx,peak_val,invert_sign_peak,trough_time_idx,trough_val,peak_to_trough_ratio,peak_to_trough_ratio_log,tip_time_idx,tip_val,peak_to_trough_duration,half_peak_post_time_idx,half_peak_pre_time_idx,half_peak_post_val,half_peak_pre_val,half_peak_duration,recovery_time_idx,recovery_val,depolarisation_slope,repolarisation_slope,recovery_slope +0,20,44,-4.883662,1.0,54,1.2735074,3.8348126,1.3441206,24,0.77733666,0.0003333333333333333,47,40,-1.9125216,-1.7436237,0.00023333333333333333,59,0.98473907,-8491.498231887817,18471.508026123047,-1732.609748840332 +1,20,45,5.153482,-1.0,69,-1.0805972,4.7691054,1.5621588,41,-2.9835296,0.0008,49,43,2.1435728,2.3065486,0.0002,74,-0.9415057,61027.586460113525,-7792.599201202393,834.5489501953125 +2,20,44,-4.48732,1.0,54,1.5353007,2.9227629,1.0725293,39,0.71306074,0.0003333333333333333,48,42,-1.6273819,-2.058325,0.0002,59,0.7605876,-31202.284812927246,18067.862033843994,-4648.2789516448975 +3,20,40,1.8537197,-1.0,61,-0.49219757,3.7662106,1.3260694,23,-0.66024184,0.0007,46,38,0.7720857,0.6908671,0.0002666666666666667,66,-0.35654825,4436.402741600485,-3351.310321262905,813.8959407806396 +4,19,48,-2.7637115,1.0,65,1.1901706,2.3221135,0.8424778,38,3.0702133,0.0005666666666666667,54,45,-1.362757,-1.3184559,0.0003,70,0.39087203,-17501.774311065674,6977.4392071892225,-4795.791864395142 +5,19,45,-2.240881,1.0,63,0.5131445,4.366959,1.474067,39,2.18663,0.0006,50,43,-0.93143564,-0.93315697,0.00023333333333333333,68,0.26503378,-22137.556076049805,4590.042432149252,-1488.6642694473267 diff --git a/src/tests/unit/cpu/fixtures/waveform_sample/test_df_wavinfo.csv b/src/tests/unit/cpu/fixtures/waveform_sample/test_df_wavinfo.csv index c5a36d8..d0b7b29 100644 --- a/src/tests/unit/cpu/fixtures/waveform_sample/test_df_wavinfo.csv +++ b/src/tests/unit/cpu/fixtures/waveform_sample/test_df_wavinfo.csv @@ -3,3 +3,5 @@ 1,T00500,da8dfec1-d265-44e8-84ce-6ae9c109b8bd,11 0,T00500,1a276285-8b0e-4cc9-9f0a-a3a002978724,1 1,T00500,1a276285-8b0e-4cc9-9f0a-a3a002978724,2 +0,T00500,5d570bf6-a4c6-4bf1-a14b-2c878c84ef0e,10 +1,T00500,5d570bf6-a4c6-4bf1-a14b-2c878c84ef0e,11