def br_caller(df, method, params, expected, expected_baseline): df = norm(df, [[580, 600]]) result, result_baseline = remove_baseline(df, method, params=params) np.testing.assert_array_almost_equal(expected, np.array(result['wvl'].iloc[5, 0:5])) np.testing.assert_array_almost_equal( expected_baseline, np.array(result_baseline['wvl'].iloc[5, 0:5]))
def run(self): method = self.chooseAlgorithmComboBox.currentText() datakey = self.chooseDataComboBox.currentText() # return method parameters and parameters that changed methodParameters, _changed = self.getMethodParams(self.chooseAlgorithmComboBox.currentIndex()) datakey_new = datakey + '-Baseline Removed-' + method + str(_changed) datakey_baseline = datakey + '-Baseline-' + method + str(_changed) self.datakeys.append(datakey_new) self.datakeys.append(datakey_baseline) self.data[datakey_new] = self.data[datakey].df.copy(deep=True) df, df_baseline = remove_baseline(self.data[datakey_new],method, segment=True, params=methodParameters) self.data[datakey_new] = spectral_data(df) self.data[datakey_baseline] = spectral_data(df_baseline)
def test_KK(): #test case where bottom width is too small df = pd.read_csv(get_path('test_data.csv'), header=[0, 1]) methodParameters = { 'top_width': 10, 'bottom_width': 0, 'exponent': 2, 'tangent': False } result, result_baseline = remove_baseline(df, 'KK', params=methodParameters) assert np.isnan(result['wvl'].iloc[0, 0]) #test case using top and bottom widths and tangent df = pd.read_csv(get_path('test_data.csv'), header=[0, 1]) methodParameters = { 'top_width': 10, 'bottom_width': 50, 'exponent': 2, 'tangent': True } expected = [-0.119923, -0.117072, -0.114455, -0.120391, -0.122455] expected_baseline = [0.130102, 0.130128, 0.130152, 0.130174, 0.130194] br_caller(df, 'KK', methodParameters, expected, expected_baseline) #test using just bottom width df = pd.read_csv(get_path('test_data.csv'), header=[0, 1]) methodParameters = { 'top_width': 0, 'bottom_width': 50, 'exponent': 2, 'tangent': False } expected = [0.002431, 0.005307, 0.007949, 0.002039, 0.] expected_baseline = [0.007748, 0.007749, 0.007748, 0.007745, 0.00774] br_caller(df, 'KK', methodParameters, expected, expected_baseline) # test ranges expected_ranges = { 'top_width': (0, 100, 'integer'), 'bottom_width': (0, 100, 'integer') } br_obj = kajfosz_kwiatek.KajfoszKwiatek() assert br_obj.param_ranges() == expected_ranges
def remove_baseline(self, method, segment, params): self.df = remove_baseline.remove_baseline(self.df, method=method, segment=segment, params=params)
def test_not_recognized(): df = pd.read_csv(get_path('test_data.csv'), header=[0, 1]) result = remove_baseline(df, 'foo', params=None) assert result == 0