This method looks for monoisotopic peaks in peak list data (represented by a MassPeaks objects).
It is based on the poisson model for isotopic patterns described in Breen et al 2000.
methods
## S4 method for signature 'MassPeaks'monoisotopicPeaks(object, minCor=0.95, tolerance=1e-4, distance=1.00235, size=3L:10L)## S4 method for signature 'list'monoisotopicPeaks(object,...)
Arguments
object: MassPeaks object or a list of MassPeaks objects.
minCor: double, minimal correlation between the peak pattern generated by the model and the experimental peaks in the MassPeaks object to be recognized as isotopic pattern.
tolerance: double, maximal relative deviation of peaks position (mass) to be considered as isotopic distance ( abs(((mass[i]+distance)-mass[i+1])/mass[i]) < tolerance).
distance: double, distance between two consecutive peaks in an isotopic pattern (default value taken from Park et al 2008). Could contain more than one value, e.g. distance=(1:3)^-1 to find isotopic patterns for multiple charged patterns (e.g. 1+, 2+, and 3+). Please note that the order matters here if there is a monoisotopic peak for charge state 1 and 3 it would be reported as charge 1 for distance=(1:3)^-1 and as 3 for distance=(3:1)^-1
respectively.
size: double, size (length) of isotopic pattern, longer patterns are prefered over shorter ones.
...: arguments to be passed to monoisotopicPeaks,MassPeaks-method. If object is a listmc.cores is also supported.
Returns
Returns a MassPeaks object with monoisotopic peaks only.
K. Park, J.Y. Yoon, S. Lee, E. Paek, H. Park, H.J. Jung, and S.W. Lee. 2008. Isotopic peak intensity ratio based algorithm for determination of isotopic clusters and monoisotopic masses of polypeptides from high-resolution mass spectrometric data. Analytical Chemistry, 80: 7294-7303.
E.J. Breen, F.G. Hopwood, K.L. Williams, and M.R. Wilkins. 2000. Automatic poisson peak harvesting for high throughput protein identification. Electrophoresis 21: 2243-2251.
## load packagelibrary("MALDIquant")## create example peaksp <- createMassPeaks(mass=995:1005, intensity=c(100,10,30,10,40,# noise550,330,110,10,# isotopic pattern5,15))# more noisem <- monoisotopicPeaks(p)as.matrix(m)## plot the peaks and mark the monoisotopic oneplot(p)points(m, col=2, pch=4)