getRidge: Identify ridges based on the local maximum matrix

View source: R/getRidge.R

getRidgeR Documentation

Identify ridges based on the local maximum matrix

Description

Identify ridges by connecting the local maximum of 2-D CWT coefficients from the coarse scale to detail scale. The local maximum matrix is returned from getLocalMaximumCWT()

Usage

getRidge(
  localMax,
  iInit = ncol(localMax),
  step = -1,
  iFinal = 1,
  minWinSize = 5,
  gapTh = 3,
  skip = NULL,
  scaleToWinSize = "doubleodd"
)

Arguments

localMax

The local maximum matrix is returned from getLocalMaximumCWT() with 1 represents maximum, others are 0.

iInit

The start column to search ridge. By default, it starts from the coarsest scale level.

step

Search step. -1 by default, which means searching from coarse scale to detail scale column by column.

iFinal

The final column index of search ridge.

minWinSize

The minimum slide window size used.

gapTh

The gap allowed during searching for ridge. 3 by default.

skip

The column to be skipped during search.

scaleToWinSize

How scales should be mapped to window sizes. Traditionally, MassSpecWavelet used the "doubleodd" mapping (winSize <- 2*scale+1). xcms switched this mapping to "halve" (winSize <- floor(scale/2)). Besides "doubleodd" and "halve" this parameter can also be a custom function of the scale.

Value

Return a list of ridge. As some ridges may end at the scale larger than 1, in order to keep the uniqueness of the ridge names, we combined the smallest scale of the ridge and m/z index of the peak at that scale together to name the ridges. For example the ridge name "1\_653" means the peak ridge ends at the CWT scale 1 with m/z index 653 at scale 1.

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

getLocalMaximumCWT(), identifyMajorPeaks()

Examples


data(exampleMS)
scales <- seq(1, 64, 3)
wCoefs <- cwt(exampleMS[5000:11000], scales = scales, wavelet = "mexh")

localMax <- getLocalMaximumCWT(wCoefs)
ridgeList <- getRidge(localMax)
plotRidgeList(ridgeList)


zeehio/MassSpecWavelet documentation built on May 6, 2023, 1:32 a.m.