findChromPeaks-centWave | R Documentation |
The centWave algorithm perform peak density and wavelet based chromatographic peak detection for high resolution LC/MS data in centroid mode [Tautenhahn 2008].
The CentWaveParam
class allows to specify all settings
for a chromatographic peak detection using the centWave method. Instances
should be created with the CentWaveParam
constructor.
The findChromPeaks,OnDiskMSnExp,CentWaveParam
method
performs chromatographic peak detection using the centWave
algorithm on all samples from an OnDiskMSnExp
object. OnDiskMSnExp
objects encapsule all
experiment specific data and load the spectra data (mz and intensity
values) on the fly from the original files applying also all eventual
data manipulations.
ppm
,ppm<-
: getter and setter for the ppm
slot of the object.
peakwidth
,peakwidth<-
: getter and setter for the
peakwidth
slot of the object.
snthresh
,snthresh<-
: getter and setter for the
snthresh
slot of the object.
prefilter
,prefilter<-
: getter and setter for the
prefilter
slot of the object.
mzCenterFun
,mzCenterFun<-
: getter and setter for the
mzCenterFun
slot of the object.
integrate
,integrate<-
: getter and setter for the
integrate
slot of the object.
mzdiff
,mzdiff<-
: getter and setter for the
mzdiff
slot of the object.
fitgauss
,fitgauss<-
: getter and setter for the
fitgauss
slot of the object.
noise
,noise<-
: getter and setter for the
noise
slot of the object.
verboseColumns
,verboseColumns<-
: getter and
setter for the verboseColumns
slot of the object.
roiList
,roiList<-
: getter and setter for the
roiList
slot of the object.
fistBaselineCheck
,firstBaselineCheck<-
: getter
and setter for the firstBaselineCheck
slot of the object.
roiScales
,roiScales<-
: getter and setter for the
roiScales
slot of the object.
CentWaveParam(
ppm = 25,
peakwidth = c(20, 50),
snthresh = 10,
prefilter = c(3, 100),
mzCenterFun = "wMean",
integrate = 1L,
mzdiff = -0.001,
fitgauss = FALSE,
noise = 0,
verboseColumns = FALSE,
roiList = list(),
firstBaselineCheck = TRUE,
roiScales = numeric(),
extendLengthMSW = FALSE,
verboseBetaColumns = FALSE
)
## S4 method for signature 'OnDiskMSnExp,CentWaveParam'
findChromPeaks(
object,
param,
BPPARAM = bpparam(),
return.type = "XCMSnExp",
msLevel = 1L,
...
)
## S4 method for signature 'CentWaveParam'
ppm(object)
## S4 replacement method for signature 'CentWaveParam'
ppm(object) <- value
## S4 method for signature 'CentWaveParam'
peakwidth(object)
## S4 replacement method for signature 'CentWaveParam'
peakwidth(object) <- value
## S4 method for signature 'CentWaveParam'
snthresh(object)
## S4 replacement method for signature 'CentWaveParam'
snthresh(object) <- value
## S4 method for signature 'CentWaveParam'
prefilter(object)
## S4 replacement method for signature 'CentWaveParam'
prefilter(object) <- value
## S4 method for signature 'CentWaveParam'
mzCenterFun(object)
## S4 replacement method for signature 'CentWaveParam'
mzCenterFun(object) <- value
## S4 method for signature 'CentWaveParam'
integrate(f)
## S4 replacement method for signature 'CentWaveParam'
integrate(object) <- value
## S4 method for signature 'CentWaveParam'
mzdiff(object)
## S4 replacement method for signature 'CentWaveParam'
mzdiff(object) <- value
## S4 method for signature 'CentWaveParam'
fitgauss(object)
## S4 replacement method for signature 'CentWaveParam'
fitgauss(object) <- value
## S4 method for signature 'CentWaveParam'
noise(object)
## S4 replacement method for signature 'CentWaveParam'
noise(object) <- value
## S4 method for signature 'CentWaveParam'
verboseColumns(object)
## S4 replacement method for signature 'CentWaveParam'
verboseColumns(object) <- value
## S4 method for signature 'CentWaveParam'
roiList(object)
## S4 replacement method for signature 'CentWaveParam'
roiList(object) <- value
## S4 method for signature 'CentWaveParam'
firstBaselineCheck(object)
## S4 replacement method for signature 'CentWaveParam'
firstBaselineCheck(object) <- value
## S4 method for signature 'CentWaveParam'
roiScales(object)
## S4 replacement method for signature 'CentWaveParam'
roiScales(object) <- value
## S4 method for signature 'CentWaveParam'
as.list(x, ...)
ppm |
|
peakwidth |
|
snthresh |
|
prefilter |
|
mzCenterFun |
Name of the function to calculate the m/z center of the
chromatographic peak. Allowed are: |
integrate |
Integration method. For |
mzdiff |
|
fitgauss |
|
noise |
|
verboseColumns |
|
roiList |
An optional list of regions-of-interest (ROI) representing
detected mass traces. If ROIs are submitted the first analysis step is
omitted and chromatographic peak detection is performed on the submitted
ROIs. Each ROI is expected to have the following elements specified:
|
firstBaselineCheck |
|
roiScales |
Optional numeric vector with length equal to |
extendLengthMSW |
Option to force centWave to use all scales when
running centWave rather than truncating with the EIC length. Uses the "open"
method to extend the EIC to a integer base-2 length prior to being passed to
|
verboseBetaColumns |
Option to calculate two additional metrics of peak
quality via comparison to an idealized bell curve. Adds |
object |
For For all other methods: a parameter object. |
param |
An |
BPPARAM |
A parameter class specifying if and how parallel processing
should be performed. It defaults to |
return.type |
Character specifying what type of object the method should
return. Can be either |
msLevel |
|
... |
ignored. |
value |
The value for the slot. |
f |
For |
x |
The parameter object. |
The centWave algorithm is most suitable for high resolution
LC/{TOF,OrbiTrap,FTICR}-MS data in centroid mode. In the first phase
the method identifies regions of interest (ROIs) representing
mass traces that are characterized as regions with less than ppm
m/z deviation in consecutive scans in the LC/MS map. In detail, starting
with a single m/z, a ROI is extended if a m/z can be found in the next scan
(spectrum) for which the difference to the mean m/z of the ROI is smaller
than the user defined ppm
of the m/z. The mean m/z of the ROI is then
updated considering also the newly included m/z value.
These ROIs are then, after some cleanup, analyzed using continuous wavelet
transform (CWT) to locate chromatographic peaks on different scales.
The first analysis step is skipped, if regions of interest are passed
via the param
parameter.
Parallel processing (one process per sample) is supported and can
be configured either by the BPPARAM
parameter or by globally
defining the parallel processing mode using the
register
method from the BiocParallel
package.
The CentWaveParam
function returns a CentWaveParam
class instance with all of the settings specified for chromatographic
peak detection by the centWave method.
For findChromPeaks
: if return.type = "XCMSnExp"
an
XCMSnExp
object with the results of the peak detection.
If return.type = "list"
a list of length equal to the number of
samples with matrices specifying the identified peaks.
If return.type = "xcmsSet"
an xcmsSet
object
with the results of the peak detection.
ppm,peakwidth,snthresh,prefilter,mzCenterFun,integrate,mzdiff,fitgauss,noise,verboseColumns,roiList,firstBaselineCheck,roiScales,extendLengthMSW,verboseBetaColumns
See corresponding parameter above. Slots values should exclusively be accessed via the corresponding getter and setter methods listed above.
These methods and classes are part of the updated and modernized
xcms
user interface which will eventually replace the
findPeaks
methods. It supports peak detection on
OnDiskMSnExp
objects (defined in the MSnbase
package). All of the settings to the centWave algorithm can be passed
with a CentWaveParam
object.
Ralf Tautenhahn, Johannes Rainer
Ralf Tautenhahn, Christoph Böttcher, and Steffen Neumann "Highly sensitive feature detection for high resolution LC/MS" BMC Bioinformatics 2008, 9:504
The do_findChromPeaks_centWave
core API function and
findPeaks.centWave
for the old user interface.
peaksWithCentWave
for functions to perform centWave peak
detection in purely chromatographic data.
XCMSnExp
for the object containing the results of
the peak detection.
Other peak detection methods:
findChromPeaks()
,
findChromPeaks-centWaveWithPredIsoROIs
,
findChromPeaks-massifquant
,
findChromPeaks-matchedFilter
,
findPeaks-MSW
## Create a CentWaveParam object. Note that the noise is set to 10000 to
## speed up the execution of the example - in a real use case the default
## value should be used, or it should be set to a reasonable value.
cwp <- CentWaveParam(ppm = 20, noise = 10000, prefilter = c(3, 10000))
## Change snthresh parameter
snthresh(cwp) <- 25
cwp
## Perform the peak detection using centWave on some of the files from the
## faahKO package. Files are read using the `readMsExperiment` function
## from the MsExperiment package
library(faahKO)
library(xcms)
library(MsExperiment)
fls <- dir(system.file("cdf/KO", package = "faahKO"), recursive = TRUE,
full.names = TRUE)
raw_data <- readMsExperiment(fls[1])
## Perform the peak detection using the settings defined above.
res <- findChromPeaks(raw_data, param = cwp)
head(chromPeaks(res))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.