findPeaks.centWave-methods {xcms} | R Documentation

## Feature detection for centroided LC/MS data

### Description

Peak density and wavelet based feature detection for centroided LC/MS data

### Arguments

`object` | `xcmsSet` object
`scanrange` | scan range to check for peaks
`minEntries` | minimum number of peaks(centroids) within the range of `dev` ppm
`dev` | see above
`snthresh` | signal to noise ratio cutoff
`noiserange` | neighbourhood size (number of scans) for each ROI used for noise/baseline analysis, two region sizes can be used for better local basline estimation
`minPeakWidth` | Minimum extent (number of scans) of a peak. Only used to estimate other parameters.
`scales` | scales to use for wavelet analysis, the scale range should correspond to the width range of the chromatographic peaks (number of scans)
`maxGaussOverlap` | maximal allowed overlapping (peak area)
`minPtsAboveBaseLine` | minimum number of data points above baseline
`scRangeTol` | tolerance (in scans) if gaussian peak center is not within the initial ROI
`maxDescOutlier` | Maximum number of outliers on the descent to find peak borders (used if integrate=2)
`mzdiff` | minimum difference in m/z for peaks with overlapping retention times, can be negative to allow overlap
`rtdiff` | minimum difference in retention time for peaks with overlapping m/z, can be negative to allow overlap
`integrate` | Integration method. If `=1` peak limits are found through descent on the mexican hat filtered data, if `=2` the descent is done on the real data. Method 2 is honest, while method 1 is more robust to noise.
`sleep` | number of seconds to pause between plotting peak finding cycles
`fitgauss` | logical, if TRUE a gaussian is fitted to each peak
`verbose.columns` | logical, if TRUE additional peak meta data columns are returned

### Details

This algorithm is most suitable for high resolution centroid LC/TOF-MS data. In the first phase of the method areas of high peak density (characterised by having at least `minEntries` peaks within `dev` ppm in consecutive scans) in the LC/MS map are located. In the second phase these regions of interest (ROI) are further analysed. Continuous wavelet transform (CWT) is used to locate chromatographic peaks on different scales.

### Value

A matrix with columns:

`mz` | weighted (by intensity) mean of peak m/z across scans
`mzmin` | m/z of minimum step
`mzmax` | m/z of maximum step
`rt` | retention time of peak midpoint
`rtmin` | leading edge of peak retention time
`rtmax` | trailing edge of peak retention time
`into` | integrated area of original (raw) peak
`maxo` | maximum intensity of original (raw) peak
`sn` | Signal/Noise ratio, calculated as (maxo / baseline value)
`egauss` | RMSE of Gaussian fit
`` | if `verbose.columns` is `TRUE` additionally :
`mu` | Gauss parameter $μ$
`sigma` | Gauss parameter $σ$
`h` | Gauss parameter h
`f` | ROI number
`scale` | Scale on which the peak was localised
`scpos` | Peak position found by wavelet analysis
`scmin` | Left peak limit found by wavelet analysis (scan number)
`scmax` | Right peak limit found by wavelet analysis (scan number)
`lmin` | leading edge of peak (scan number)
`lmax` | trailing edge of peak (scan number)

### Methods

object = "xcmsRaw"
  `findPeaks.centWave(object, scanrange=c(1,length(object@scantime)), minEntries=4, dev=140e-6, snthresh=20, minPeakWidth=7, noiserange=c(minPeakWidth*3,minPeakWidth*6), scales=c(5,7,9,12,16,20), maxGaussOverlap = 0.5, minPtsAboveBaseLine=4, scRangeTol=2, maxDescOutlier=floor(minPeakWidth/2), mzdiff=-0.001, rtdiff=-round(2/3 *minPeakWidth *mean(diff(object@scantime))), integrate=1, sleep=0, fitgauss = FALSE, verbose.columns = FALSE)`

### Author(s)

Ralf Tautenhahn, rtautenh@ipb-halle.de

### See Also

`findPeaks-methods` `xcmsRaw-class`

[Package xcms version 1.10.7 Index]