Example #1
0
def test_peak_area():
    df = pd.read_csv(get_path('test_data.csv'), header=[0, 1])
    df = df[df[('meta', 'LIBS ID')] == 'LIB00041']

    expected_peaks = np.array([
        586.723, 588.746, 589.42, 590.767, 591.216, 592.114, 592.787, 593.46,
        593.909, 594.357
    ])
    expected_mins = np.array([
        585.374, 587.173, 589.195, 590.543, 590.992, 591.89, 592.338, 593.236,
        593.685, 594.133, 594.582
    ])
    expected_areas = np.array([
        7248.48, 43986.54, 25421.36, 1843.12, 3593.24, 1661.12, 3316.24,
        1679.12, 1690.12, 1739.12
    ])
    pa_df = pd.DataFrame(expected_areas).T
    pa_df.columns = pd.MultiIndex.from_tuples([('peak_area', i)
                                               for i in expected_peaks])
    df_result, peaks_result, mins_result = pa.peak_area(df,
                                                        peaks_mins_file=None)
    np.testing.assert_array_almost_equal(np.array(peaks_result, dtype=float),
                                         expected_peaks)
    np.testing.assert_array_almost_equal(np.array(mins_result, dtype=float),
                                         expected_mins)
    np.testing.assert_array_almost_equal(
        np.squeeze(np.array(df_result['peak_area'])), expected_areas)
Example #2
0
def test_peak_area_from_file():
    df = pd.read_csv(get_path('test_data.csv'), header=[0, 1])
    df = df[df[('meta', 'LIBS ID')] == 'LIB00041']
    peaks_mins_file = get_path('peaks_mins.csv')
    df_result, peaks_result, mins_result = pa.peak_area(
        df, peaks_mins_file=peaks_mins_file)
    expected_peaks = [588.072, 592.338]
    expected_mins = [586.273, 589.195, 594.133]
    expected_areas = [47938.78, 39204.32]
    np.testing.assert_array_almost_equal(expected_peaks, peaks_result)
    np.testing.assert_array_almost_equal(expected_mins, mins_result)
    np.testing.assert_array_almost_equal(
        expected_areas,
        np.array(df_result['peak_area'])[0, :])
 def peak_area(self, peaks_mins_file):
     self.df, self.peaks, self.mins = peak_area.peak_area(
         self.df, peaks_mins_file=peaks_mins_file)