Skip to content

Baseline correction

Guillaume Erny edited this page Dec 19, 2017 · 6 revisions

Baseline correction of a dataset recorded in profile mode

The method BaselineCorrection in the Finnee class is used to correct a full dataset, recorded in profile mode, from baseline drift. This step should follow first a scans alignment and may follow a Savitzky Golay filtering

Correcting for baseline drift using the Graphic User Interface (GUI)

If using the command

myFinnee = myFinnee.BaselineCorrection(dts)

where dts is the index to the dataset of interest (usually 2 or 3), without any options will start the GUI

Selection of the m/z of interest

The first step in the background correction is the selection of the m/z values corresponding to profiles that should be corrected for baseline drift. This is done graphically using a frequency distribution. This represents for every m/z, the % of non-zeros values. m/z that contains the only contribution for ions that originate from separated species will have a low % of nonzeros values unlikes m/z at which ions present in the mobile phase or BGE are detected. The value will depend on the noise and technique.

FrequencyDistribution

The adequacy of the chosen threshold can be verified in the next step where the base peak profile (BPP) constructed using (top) m/z that will be corrected for baseline drift is compared with the BPP (bottom) constructed with uncorrected m/z. Ideally, as shown bellow, the baseline of the bottom profile should be close to zero, but the threshold should be as high as possible to (1) decrease the number od profile to correct and (2) insure that very profile contain enough baseline points to allow correcting

Results

Baseline and background correction parameters

The baseline function should then be selected, and the parameters optimised. It is recommended to try with different profiles.

setBslParameters

Correcting for baseline drift using optional parameters

The following optional parameters can be used with BaselineCorrection to avoid using the GUI:

myFinnee = myFinnee.BaselineCorrection(dts, 'Frequency', frqThr, 'Baseline', method)

where frqThr is typically between 30 and 90%, and method can be

  • 'PolyFit:n': Weighted recursive polynomial function of order n
  • 'ArPLS:lambda:ratio': arPLS published in Baek, S.-J., Park, A., Ahn, Y.-J., Choo, J. (2015) "Baseline correction using asymmetrically reweighted penalized least squares smoothing" Analyst, 140, 250-257. doi: 10.1039/c4an01061b
  • 'ArPLS2:lambda': ar5PLS2 published in Erny, at al. "Background correction in separation techniques hyphenated to high-resolution mass spectrometry - Thorough correction with mass spectrometry scans recorded as profile spectra", J Chrom A, 1492, 98-105. doi: 10.1016/j.chroma.2017.02.052

Estimation of the noise

In parallel with the baseline drift correction, the noise is also estimated. This is essential for the background noise removal. The noise for each mz can be visualised with

myFinnee.Datasets{1, 4}.AddInfo.Peak2PeakNoise.plot

noise


Up          :Correcting a Dataset
Next       : Noise removal
Previous: Savitzky Golay filtering


Clone this wiki locally