View source: R/do_findChromPeaks-functions.R
do_findChromPeaks_massifquant | R Documentation |
Massifquant is a Kalman filter (KF)-based chromatographic peak
detection for XC-MS data in centroid mode. The identified peaks
can be further refined with the centWave method (see
do_findChromPeaks_centWave
for details on centWave)
by specifying withWave = TRUE
.
do_findChromPeaks_massifquant(mz, int, scantime, valsPerSpect, ppm = 10,
peakwidth = c(20, 50), snthresh = 10, prefilter = c(3, 100),
mzCenterFun = "wMean", integrate = 1, mzdiff = -0.001,
fitgauss = FALSE, noise = 0, verboseColumns = FALSE,
criticalValue = 1.125, consecMissedLimit = 2, unions = 1,
checkBack = 0, withWave = FALSE)
mz |
Numeric vector with the individual m/z values from all scans/ spectra of one file/sample. |
int |
Numeric vector with the individual intensity values from all scans/spectra of one file/sample. |
scantime |
Numeric vector of length equal to the number of spectra/scans of the data representing the retention time of each scan. |
valsPerSpect |
Numeric vector with the number of values for each spectrum. |
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 |
|
criticalValue |
|
consecMissedLimit |
|
unions |
|
checkBack |
|
withWave |
|
This algorithm's performance has been tested rigorously
on high resolution LC/OrbiTrap, TOF-MS data in centroid mode.
Simultaneous kalman filters identify peaks and calculate their
area under the curve. The default parameters are set to operate on
a complex LC-MS Orbitrap sample. Users will find it useful to do some
simple exploratory data analysis to find out where to set a minimum
intensity, and identify how many scans an average peak spans. The
consecMissedLimit
parameter has yielded good performance on
Orbitrap data when set to (2
) and on TOF data it was found best
to be at (1
). This may change as the algorithm has yet to be
tested on many samples. The criticalValue
parameter is perhaps
most dificult to dial in appropriately and visual inspection of peak
identification is the best suggested tool for quick optimization.
The ppm
and checkBack
parameters have shown less influence
than the other parameters and exist to give users flexibility and
better accuracy.
A matrix, each row representing an identified chromatographic peak, with columns:
Intensity weighted mean of m/z values of the peaks across scans.
Minumum m/z of the peak.
Maximum m/z of the peak.
Minimum retention time of the peak.
Maximum retention time of the peak.
Retention time of the peak's midpoint.
Integrated (original) intensity of the peak.
Maximum intensity of the peak.
If withWave
is set to TRUE
, the result is the same as
returned by the do_findChromPeaks_centWave
method.
Christopher Conley
Conley CJ, Smith R, Torgrip RJ, Taylor RM, Tautenhahn R and Prince JT "Massifquant: open-source Kalman filter-based XC-MS isotope trace feature detection" Bioinformatics 2014, 30(18):2636-43.
massifquant
for the standard user interface method.
Other core peak detection functions: do_findChromPeaks_centWaveWithPredIsoROIs
,
do_findChromPeaks_centWave
,
do_findChromPeaks_matchedFilter
,
do_findPeaks_MSW
library(faahKO)
library(xcms)
cdfpath <- system.file("cdf", package = "faahKO")
cdffiles <- list.files(cdfpath, recursive = TRUE, full.names = TRUE)
## Read the first file
xraw <- xcmsRaw(cdffiles[1])
## Extract the required data
mzVals <- xraw@env$mz
intVals <- xraw@env$intensity
## Define the values per spectrum:
valsPerSpect <- diff(c(xraw@scanindex, length(mzVals)))
## Perform the peak detection using massifquant
res <- do_findChromPeaks_massifquant(mz = mzVals, int = intVals,
scantime = xraw@scantime, valsPerSpect = valsPerSpect)
head(res)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.