peakDetectionCWT {MassSpecWavelet}R Documentation

The main function of peak detection by CWT based pattern matching

Description

This function is a wrapper of cwt, getLocalMaximumCWT, getRidge, identifyMajorPeaks

Usage

peakDetectionCWT(ms, scales = c(1, seq(2, 30, 2), seq(32, 64, 4)), SNR.Th = 3, nearbyPeak = TRUE, peakScaleRange = 5, amp.Th = 0.01, minNoiseLevel = amp.Th/SNR.Th, ridgeLength = 24, peakThr=NULL, tuneIn = FALSE, ...)

Arguments

ms the mass spectrometry spectrum
scales scales of CWT
SNR.Th SNR (Signal to Noise Ratio) threshold
nearbyPeak Determine whether to include the nearby small peaks of major peaks. TRUE by default
peakScaleRange the scale range of the peak. larger than 5 by default.
amp.Th the minimum required relative amplitude of the peak (ratio to the maximum of CWT coefficients)
minNoiseLevel the minimum noise level used in computing the SNR
ridgeLength the minimum highest scale of the peak in 2-D CWT coefficient matrix
peakThr Minimal absolute intensity (above the baseline) of peaks to be picked. If this value is provided, then the smoothing function sav.gol will be called to estimate the local intensity.(added based on the suggestion and code of Steffen Neumann)
tuneIn determine whether to tune in the parameter estimation of the detected peaks
... other parameters used by identifyMajorPeaks and smoothing function sav.gol

Value

majorPeakInfo return of identifyMajorPeaks
ridgeList return of getRidge
localMax return of getLocalMaximumCWT
wCoefs 2-D CWT coefficient matrix, see cwt for details.

Author(s)

Pan Du, Simon Lin

References

Du, P., Kibbe, W.A. and Lin, S.M. (2006) Improved peak detection in mass spectrum by incorporating continuous wavelet transform-based pattern matching, Bioinformatics, 22, 2059-2065.

See Also

cwt, getLocalMaximumCWT, getRidge, identifyMajorPeaks

Examples

        data(exampleMS)
        SNR.Th <- 3
        peakInfo <- peakDetectionCWT(exampleMS, SNR.Th=SNR.Th)
        majorPeakInfo = peakInfo$majorPeakInfo
        peakIndex <- majorPeakInfo$peakIndex
        plotPeak(exampleMS, peakIndex, main=paste('Identified peaks with SNR >', SNR.Th)) 
        
        ## In some cases, users may want to add peak filtering based on the absolute peak amplitude
        peakInfo <- peakDetectionCWT(exampleMS, SNR.Th=SNR.Th, peakThr=500)
        majorPeakInfo = peakInfo$majorPeakInfo
        peakIndex <- majorPeakInfo$peakIndex
        plotPeak(exampleMS, peakIndex, main=paste('Identified peaks with SNR >', SNR.Th))       

[Package MassSpecWavelet version 1.10.0 Index]