Logo of bmcbioiBioMed Centralsearchsubmit a manuscriptregisterthis articleBMC Bioinformatics
BMC Bioinformatics. 2008; 9: 355.
Published online 2008 Aug 28. doi:  10.1186/1471-2105-9-355
PMCID: PMC2655099

NITPICK: peak identification for mass spectrometry data



The reliable extraction of features from mass spectra is a fundamental step in the automated analysis of proteomic mass spectrometry (MS) experiments.


This contribution proposes a sparse template regression approach to peak picking called NITPICK. NITPICK is a Non-greedy, Iterative Template-based peak PICKer that deconvolves complex overlapping isotope distributions in multicomponent mass spectra. NITPICK is based on fractional averagine, a novel extension to Senko's well-known averagine model, and on a modified version of sparse, non-negative least angle regression, for which a suitable, statistically motivated early stopping criterion has been derived. The strength of NITPICK is the deconvolution of overlapping mixture mass spectra.


Extensive comparative evaluation has been carried out and results are provided for simulated and real-world data sets. NITPICK outperforms pepex, to date the only alternate, publicly available, non-greedy feature extraction routine. NITPICK is available as software package for the R programming language and can be downloaded from http://hci.iwr.uni-heidelberg.de/mip/proteomics/.


The reliable extraction of proteomic features from complex biological mixtures is of utmost interest for unraveling the intricate biomolecular interplay at the heart of many systems biology research questions. In this context, mass spectrometry (MS) has become a key technology which provides peptide and protein identification, modification characterization and quantification capabilities. In contrast to gene expression microarray technologies, MS analysis yields a direct view on the whole set of proteins (the proteome) present in the system under investigation and can thus contribute to a richer picture of protein interaction, real-time dynamics and their regulation [1]. MS contributes to clinical research and the diagnosis process [2], it is used to detect, grade and characterize cancer diseases [3], it serves as a general purpose tool for microorganism characterization [4,5] and provides sensitive and specific means for pharmaceutical quality control.

MS experiments typically contain tens to thousands of spectra, each of which holds intensity information for tens to hundreds of thousands of mass channels. These data stem from a set of different mass analysis technologies, combining chemical separation procedures (chromatography), ionization methods (electrospray ionization, matrix-assisted laser desorption/ionization) and mass analyzers (time-of-flight, quadrupole, ion cyclotron motion). Despite physicochemical preprocessing and the availability of high mass resolution instruments, spectra which stem from complex biochemical mixtures (e.g. cell lysate, blood or serum) frequently exhibit overlapping isotope distributions of independent molecular species. Moreover, in many quantitative MS approaches, these mixtures are present by design and their manual unmixing, quantification and interpretation is tedious or unfeasible.

As a consequence, the automated analysis and interpretation of multicomponent mass spectra is highly desirable. An (incomplete) set of challenges for MS feature extraction includes the sheer data set sizes, mixtures of isotope patterns, the presence of multiple charge states, chemical and detector noise, species-dependent ionization efficiencies, chemical reproducibility and deviations from detector linearity. Among all requirements that derive from these challenges, it is important to emphasize the crucial nature of the feature extraction step: as all subsequent analysis steps rely on the set of extracted features, meaningful biological conclusions are highly dependent on the adequacy and reliability of the feature extraction method.

Apart from few special alternate approaches [6,7], all automated methods for feature extraction from isotope-resolved mass spectra compare the observed (experimental) spectral pattern to a set of precalculated theoretical isotope patterns. The calculation of isotope patterns is based on the estimation of average stoichiometries for a particular molecular mass (averagine[8] and related methods [9]) or on relative isotope abundance estimation [10] or on protein database-driven mean isotope distribution calculation [11]. The computation of isotope patterns is based on efficient implementations [12-14] of Yergey's original polynomial method [15,16].

Comparison of theoretical and experimental isotope distributions is typically accomplished based on subtractive fitting and peak selection algorithms, attempting to sequentially detect the dominant components in a mixture spectrum. These subset selection methods attempt to determine a small set of basis functions capable of approximating the observed signal well. Facing the infeasibility of an exhaustive search over all possible subsets of explanatory basis functions, they apply greedy search strategies. Here, "greediness" refers to the fact that these approaches consistently overestimate individual feature contributions and are incapable of excluding a basis function once it has been included in the active set. Hence, although providing sparseness, they are not globally optimal. In the context of mixture modeling of mass spectra, these approaches amount to sequential isotope distribution template matching procedures [6,8-11,17-22]. Fitting is carried out via χ2 distances [8,20], least squares [9-11,17,21-23], weighted least squares [19], or cross-correlation [18,24]. The automatic determination of the charge state associated with an isotope pattern present in an experimental spectrum is based on cross-correlation [19,25] or on dot products in Fourier space [25,26], exploiting the shift theorem of the Fourier transform. There are only few [27] non-greedy feature selection algorithms and mixture model approaches for MS data [28-31]. Among these, Matching[28] and Roussis' method [29] rely on manual preselection of contribution candidates. Sparse non-greedy procedures include pepex[30] and Du's method [31]. The pepex approach is suitable for single charge data and is based on a non-negative sparse regression scheme, with an approximate L0-norm constraint. Du and Angeletti [31] perform data reduction prior to feature extraction and apply a sparseness-promoting variable selection scheme [32]. With the exception of Du's [31] and Kaur's [19] methods, none of the mentioned mixture model approaches provide support for the detection of a sparse set of a priori unknown peptide peaks under an arbitrary set of charge states. Du's method [31] and NITPICK overcome Kaur's greedy iterative weighted least squares fitting approach. In contrast to [31], NITPICK does not rely on a heuristic parameterization and is instead based on statistical model selection, making use of an algorithmically more efficient non-greedy sequential feature selection procedure with a statistically motivated termination criterion. NITPICK was designed to support the calculation of accurate monoisotopic peak lists from raw mass spectra and was specifically tailored to cases where the raw spectra stem from unknown, possibly overlapping experimental isotope patterns of multiple charge states.

The methods section details the mixture modeling approach, fractional averagine for improved stoichiometry estimation and data fitting, and our main contribution, a computationally efficient method for improved non-negative feature selection and the corresponding statistical complexity estimation approach in conjunction with the derivation of a lower bound for early termination. Comparative results on simulated and real-world data sets are given in the results and consequently discussed. Eventually, we conclude and offer perspectives. Derivations of the formulas used in the main article are available in the appendix.


The NITPICK algorithm (cf. figure figure1)1) models an observed mixture spectrum as a linear combination of theoretical isotope distribution patterns. Statistically, finding a sensible parameterization of this mixture model amounts to a constrained regression problem in which we seek to minimize the raw signal reconstruction error in a least-squares sense while adhering to a set of additional constraints. Such an approach requires reliable underlying isotope patterns, and we propose an improvement for the well-known averagine model to achieve this goal. We subsequently introduce NITPICK's iterative feature selection procedure, which employs a novel, non-greedy isotope distribution selection method and is based on a statistically motivated termination criterion, attempting to eliminate premature or late iteration termination.

Figure 1
NITPICK workflow overview. Raw spectrum preprocessing, relevant region detection, region-wise peak picking, merging of detected peaks and peak list postprocessing. At the heart of the method lies an iterative feature selection procedure controlled by ...

Mixture model

We assume that observed spectra are available in a discrete (not necessarily equispaced) mass binning scheme defined by a mass vector m= (m1, m2, ..., mN)T and represent a raw multicomponent mass spectrum by a vector s of size N × 1, where si corresponds to the abundance observed in the ith mass bin mi. In practical applications, the vector s may also result from preprocessing steps such as relevant region detection [19] and may thus represent only a part of a complete raw spectrum. The basic assumption behind the mixture model approach is that s be a linear combination of mass spectrum abundances of K pure components ϕi,

s = k = 1 K c i ϕ i = Φ c .

Each of the concentration coefficients ci, i = 1, ..., K is associated with a column ϕi of the N × K model matrix Φ. We regard these columns as basis functions and their elements ϕji correspond to the mass spectrum abundance expected in the jth mass bin mj of the ith pure component ϕi.

For the estimation of the concentration vector c, the model matrix Φ has to be available, and in general this is not the case. One hence resorts to approximating the basis functions by a large set of theoretical isotope distributions (i.e. isotope abundance patterns) densely spread over the prespecified mass/charge binning scheme. Effectively, this recasts the original peak picking task into the framework of a feature (i.e. basis function) selection problem.

Model matrix calculation

Given an elemental stoichiometry, the corresponding theoretical isotope distribution is well-defined and can easily be calculated [12-15]. Hence, if a prespecified set of stoichiometries of potential pure components is available, the calculation of the respective set of theoretical isotope distributions (including chemical modifications and multiple charge states) is straightforward. These isotope distributions are subsequently convolved with instrument-specific, possibly mass-dependent peak shape functions, yielding the basis functions ϕi.

Fractional averagine

In many practical applications prior knowledge about potential components is not at hand. Thus, one needs to resort to expected average stoichiometry estimates as a best-effort approximation. In this case, the quality of the feature selection procedure is highly dependent on the quality of the stoichiometry model. We therefore extended the widely used averagine approach [8] to amend its discrete and discontinuous nature, gaining models without mass errors and improved true isotope distribution reconstruction properties. Fractional averagine provides a real-valued element stoichiometry ρ = (ρ1,...,ρ5)T according to the mapping f: ℝ → ℝ5 between a mass value and the number of element atoms in an averagine (H7.75833C4.9384N1.35777O1.4773S0.0417) molecule. The calculation of the theoretical isotope distribution of ρ is based on the observation that isotope abundances follow a multinomial distribution [33], and that fractional numbers of trials in a multinomial can be modeled as linear interpolation between the probability functions of the multinomials parameterized with the surrounding integers (see appendix A). For computational ease, calculations are carried out in the realm of the corresponding moment generating function (MGF) [34] of the multinomial probability mass function. For the ith stoichiometry element, the MGF given ρi can be factorized according to

M x ( t 1 , , t k 1 | ρ i ) = [ p 1 e t 1 + + p k 1 e t k 1 + p k ] [ ρ i ] + ( ρ i ρ i ) = M x 1 ( t 1 , , t k 1 | ρ i ) M x 2 ( t 1 , , t k 1 | ( ρ i ρ i ) )

where pl is the probability of occurrence of the lth isotope l=1kpl=1, x = (x1, ..., xk) T denotes the number of times a particular isotope is chosen l=1kxl=ρi and t = (t1, ..., tk)T is the corresponding variable of the MGF. By rearrangement of the MGFs of all elements, it is possible to separate integer and real-valued contributions, yielding the common averagine model ρ^ = (⌊ρ1⌋, ⌊ρ2⌋, ..., ⌊ρ5⌋)T for the integers and the fractional averagine correction ρ˜ = (ρ1 - ⌊ρ1⌋, ρ2 - ⌊ρ2⌋, ..., ρ5 - ⌊ρ5⌋)T for the remaining fractional masses. The theoretical isotope distribution for ρ˜i is given by the linear combination of a peak of intensity one at mass zero and the theoretical isotope distribution of the ith averagine element, weighted by 1 - ρ˜i and ρ˜i, respectively. Thus, efficient calculation of the theoretical isotope distribution of the stoichiometry ρ^ is carried out based on the Mercury7 algorithm [14], and the theoretical isotope distribution for the fractional stoichiometry ρ is subsequently obtained with five additional convolution steps.

Basis function selection

Given the set of basis functions Φ = [ϕ1ϕ2 ... ϕk], basis function selection and subsequent determination of the contribution coefficients ci provides a solution to eq. (1). Thus, as the modeling parameters and, in particular, the monoisotopic masses for all basis function are known, one can determine which isotope distributions are present and in what abundance (assuming ∑kϕki = 1).

In practice, basis functions are calculated for each possible monoisotopic mass and each expected charge state, yielding model matrices Φ with KN (in the case of one basis function per mass/charge bin and charge, we have K = nZN, where nZ corresponds to the number of charge states observable in the experiment; hence, for nZ> 1, there exists an infinite number of solutions for eq. (1)). This is a problem intrinsic to the proposed mixture modeling approach and has been observed previously [23,28,30]. The least absolute shrinkage and selection operator (LASSO) [32] enjoys favorable properties of regularization and subset selection. Because the LASSO is capable of shrinking coefficients to exactly zero, it offers a non-greedy way to gain sparse models. The LASSO solution c^ for equation (1) is given by

c ^ = arg min c { | | s Φ c | | 2 } s . t . i = 1 K | c i | t ,

where t ≥ 0 is a user-defined tuning parameter [31,32]. Mass spectra intensities si, basis function values ϕji, and basis function contributions ck are strictly non-negative, thus adding a non-negativity constraint to the solution space of c^, yielding

c ^ = arg min c { | | s Φ c | | 2 } s . t . i = 1 K | c i | t , c i 0.

For fixed t, this is a quadratic programming problem with linear inequality constraints which can be solved by an active set algorithm, sequentially introducing the inequality constraints and seeking a feasible solution satisfying the Kuhn-Tucker conditions [32,35,36]. Equation (4) corresponds to c^(λ)=argminc{||sΦc||2+λi=1K|ci|} with ci ≥ 0 where the parameter t is related to the Lagrangian multiplier λ which determines the number of free parameters df(λ) in the linear model [32,36-38].

Common procedures for the optimal selection of λ or df(λ) are based on the minimization of the prediction error. This involves estimation of training optimism via Cp-statistics, the Akaike Information Criterion (AIC), or the Bayesian Information Criterion (BIC) [37]. Alternatively, direct estimation of prediction error can be carried out via cross-validation or generalized cross-validation (GCV) [37]. All these methods require the LASSO trace c^(λl), where λl ∈ ℒ and ={λ1,...,λ||} defines the set of LASSO regularization parameters for which the prediction error is calculated. In general, the calculation of the LASSO trace is computationally intensive and it is not clear how the elements of ℒ should be selected [36]. Least angle regression (LARS) [39] is an algorithmically different approach to variable selection which can be modified such that the LARS algorithm implements the non-negative LASSO from equation (4). The LASSO-modified LARS is a constructive active set procedure which constructs the LASSO regularization path in a stepwise manner. Denote by A(λ) the set of indices i ∈ {1. ..., K} of those ϕi which are in the active set for a particular choice of λ. Starting from λ = ∞ and letting λ → 0, the algorithm computes non-negative LASSO solutions for all λ for which the active set changes, thus implicitly defining ℒ. The LASSO-modified LARS guarantees A(λj) ≠ A(λj+1), but it allows for the deletion of previously selected basis functions, and hence |A(λj) | need not increase monotonically for increasing j. Basis functions can be required to enter the active set in their predefined directions [39] which allows the implementation of a non-negativity constraint. Necessary matrix inversions are constrained to |A(λ) | × |A(λ)|-sized scatter matrices ΦA(λ)TΦA(λ) and can be implemented as iterative updates, thus the procedure is computationally efficient.

Complexity estimation

It is desirable to terminate active set updates as soon as the basis functions in the active set are able to explain the observed data sufficiently well, i.e. until the increase in explanatory power does not justify the increase in model complexity anymore. We now describe a modification to the non-negative LASSO-modified LARS, which enables us to sequentially build a BIC trace along the LASSO regularization path and to identify minima along this trace. Upon termination, the proposed procedure returns the estimate c^A and the set A={i|c^Ai>0} of active basis functions.

BIC measure

The LARS Cp-type risk reestimation formula [39] for optimal selection of λ does not hold under the non-negative LASSO modification. Instead, we recalculate a BIC measure

BIC ( λ ) = 1 σ 2 | | s Φ A ( λ ) c ^ A ( λ ) q | | 2 N . MSE ( λ ) + d f ( λ ) log N ,

in each LARS iteration [40]. For the calculation of the unbiased training error MSE(λ) in eq. (5) we require an additional non-negative least squares fit

c ^ A ( λ ) q = arg min c A ( λ ) | | s Φ A ( λ ) c A ( λ ) | | 2 s .  t . ( c ^ A ( λ ) q ) i 0.

The noise variance σ2 in eq. (5) is estimated as the mean residual sum of squares of a low-bias non-negative least squares estimate [37].

Estimation of df(λ)

The calculation of BIC(λ) in eq.(5) requires an estimate for the degrees of freedom df(λ), which can be obtained via the generalized degrees of freedom (GDF) [38]. The GDF of an NN-LASSO-modified LARS model based on an active set A(λ) are given by

GDF ( λ ) = 1 σ 2 s T Φ A ( λ ) c ^ A ( λ ) q .

Because the coefficients (c^A(λ)q)i > 0 are non-negative, the estimate c^A(λ)q solves

c ^ A ( λ ) q = arg min c ^ A ( λ ) q { | | s Φ c A ( λ ) q | | 2 + λ i = 1 K ( c A ( λ ) q ) i }

which is differentiable with respect to (c^A(λ)q)i. Setting the derivative to zero, we obtain

c ^ A ( λ ) q = ( Φ A ( λ ) T Φ A ( λ ) ) 1 ( Φ A ( λ ) T s 1 2 λ 1 A ( λ ) ) .

Hence, given an active set A(λ), the generalized degrees of freedom from eq. (7) can be written as

GDF ( λ ) = s T 1 σ 2 ( Φ A ( λ ) c ^ A ( λ ) q ) = s T 1 σ 2 Φ A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 ( Φ A ( λ ) T s 1 2 λ 1 A ( λ ) )

which is monotonously increasing for decreasing λ (see appendix B for a proof).

Optimal termination

The minimal possible training error of the model is attained when all variables are in the active set, in which case the respective coefficients c^q are given by c^q = arg minc ||s - Φc||2 subject to ci ≥ 0, and the corresponding error is MSE=1N||sΦc^q||2. Thus, a lower bound for BIC(λ) is given by

BIC m i n ( λ ) = N σ 2 MSE + GDF ( λ ) log N

(see appendix C for a proof). In general, BIC(λ) will have several minima for increasing values of GDF(λ), hence we track the minimum BIC(λmin) through the NN-LASSO-modified LARS cycles and accept λmin as a minimizer as soon as the lower bound BICmin(λ) of a subsequent LARS step exceeds the current best estimate BIC(λmin), i.e. BIC(λmin) < BICmin(λ) (see figure figure22).

Figure 2
Efficient automated determination of the number of components in an area with overlapping peaks using the BICmin(λ) termination criterion. The mean squared error MSE (scaled, dotted) decreases monotonically over the LARS steps and the generalized ...

Regression on selected models

The sum constraint in equation (4) is ultimately responsible for the sparseness property of the LASSO. Its regularizing effect is similar to the one of the regularization term found in ridge regression, especially with respect to the fact that all LASSO estimates c^i, i = 1, ..., K are subject to shrinkage [32,37] and represent biased versions of the least squares estimates. Given an active set A, the shrinkage bias on the c^i can effectively be removed by introducing a subsequent non-negative least squares regression step after the basis functions have been selected by the LASSO procedure [32]. This also holds true for the NN-LASSO-modified LARS procedure, and the corresponding unbiased quantification estimate c^Aq is given by equation (6) with A(λ) = A.


The estimate c^ is subject to modeling errors and these shortcomings lead to suboptimal NN-LASSO-modified LARS estimates and active sets. In particular, the estimation depends on the match between the observed and theoretical peak shape function. Especially in high mass resolution experiments, one can frequently observe spurious peak detections in bins directly adjacent to monoisotopic mass bins of true peaks [30]. A possible remedy is a local maximum detection implemented as a postprocessing filter φ(·) applied to the active basis function index set A:

A = φ ( A | G ) = { j A | ( c ^ A q ) j = max { ( c ^ A q ) l | l ν G ( j ) } }

where νG(j)={kA||bkbj|G12} defines an m/z-neighborhood of size G around each peak and bj is the mass/charge bin index of the monoisotopic mass m0 of the jth theoretical isotope distribution ϕj. If AA, c^A(λ)q is reestimated using eq. (6) with A(λ)=A


Stoichiometry models

The fractional averagine stoichiometry model was compared against the classical averagine model based on the analysis of their respective approximation errors using simulated theoretical peptide isotope distributions.

Data Set

All UniProt (version 51.4.) [41] human proteins were subjected to in silico tryptic digestion. For each of the R digestion product peptides Pr,r{1,...,R}, exact element stoichiometries ρrx and exact theoretical isotope distributions drx were calculated. Peptides with monoisotopic masses above m/z 5000 were discarded.

Comparison of deviations

Classical and fractional averagine were used to estimate approximate element stoichiometries ρ^r and ρr, respectively, for all peptides Pr in the data set. Based on ρ^r and ρr, the corresponding theoretical isotope distribution intensity vectors d^r and dr were calculated. Figure Figure33 shows the cumulative distribution of the squared differences between the classical averagine and the true theoretical isotope distribution intensity vectors (||d^rdrx||22, dashed black), and fractional averagine and the true theoretical isotope distribution intensity vectors (||drdrx||22, solid red).

Figure 3
Comparison of the impact of averagine and fractional averagine stoichiometry estimation errors on the estimation of theoretical isotope distributions. The cumulative histograms of least squares deviations from the true theoretical isotope distribution ...

Peak picking

For peak picking/feature extraction performance evaluation, we determine representative peak picking statistics: we calculate accuracy, sensitivity, specificity, and positive and negative predictive values on simulation data. Further, and in contrast to previous contributions, we explicitly perform manual validation on a real-world data set.

Data sets

Simulation data sets

For the simulation, all UniProt (version 51.4.) [41] human protein sequences were subjected to in silico tryptic digestion. Simulation sets were generated by random drawing of digestion product peptides and intensities. To ensure a fair comparison with the pepex procedure (which was selected for benchmarking as the only publicly available procedure implementing non-greedy feature extraction) which is limited to singly charged data sets, all simulated peptide were endowed with a single charge. Mercury7 [14] was used for the calculation of the respective theoretical isotopic distributions. After convolution with an m/z-dependent Gaussian aperture function [42], intensity-weighted linear combinations of peptide spectra were calculated and a Poisson noise model (see appendix D) was applied to obtain spectra of different signal to noise (SNR) ratios. Simulations were performed in the densely populated m/z 500–700 range (see Additional file 1 for the data sets).

Real-world data set

Experiments on real-world data were performed using Bovine Serum Albumin (BSA) LC/(ESI-)MS calibration data. The data set was acquired on a QSTAR XL mass spectrometer (Applied Biosystems/MDS Sciex) equipped with microsale capillary HPLC system (Famos Autosampler, LC packings, Agilent 1100 HPLC pump). A mixture spectrum with many overlapping peaks was obtained by integration of the LC/MS data set over the retention time domain (see Additional files 2 and 3). Peak identification was carried out in the m/z 500–700 range and peak shape functions were modeled according to mass-dependent Gaussian distributions with standard deviations σ(m/z) = 0.005 m/z [42].

Performance estimation

We characterize peak picking performance based on a set of measures from statistical test theory, all of which depend on the availability of the numbers of true positives (TP), true negatives (TN), false positives (FP) and false negatives (FN).

Ground truth is based on knowledge of the complete set of peptide signals present in a mass spectrum. For simulated data sets, this information is available. In real-world experiments, the definition of ground truth is complicated by sample complexity, stochastic sample modification, non-peptidic components and limited dynamic range. As a consequence, TNs, FNs and the overall number of true peaks are not available for real-world data, limiting the available statistical measures to positive predictive values and the ratio of true positives (sensitivity ratios).

Nevertheless, we can determine the number of TPs and FPs in both cases: we check whether a detected peak really exists and if it has been assigned its correct monoisotopic mass m0 and charge z. If so, it is counted as true positive (TP) or, otherwise, as false positive (FP).

Simulation data

As the complete set of simulated peaks is known, the remaining set of undetected peaks can be determined and its members are counted as false negatives (FN). With the true number of positives and negatives available the calculation of the number of true negatives (TN) is straightforward, thus enabling the use of related statistical test error measures for performance characterization:

• accuracy (ACC) measures the rate of correct peak vs. no peak decisions, i.e. ACC=TP+TNTN+FP+TP+FN

• the negative predictive value (NPV) gives the rate at which there is no peak at positions where the procedure was unable to find a peak, NPV=TNTN+FN

• the positive predictive value (PPV) measures the rate of correct peak detections among all peaks detected by the procedure, PPV=TPTP+FP

• sensitivity (SE) measures the method's ability to detect a peak if it exists, SE=TPTP+FN

• specificity (SP) measures the method's ability to correctly identify the absence of peaks in the spectrum, SP=TNTN+FP

All measures have been computed with and without the application of postprocessing.

Real-world data

Resorting to LC/MS data and creating a semi-artificial data set by integration over the retention time domain was motivated by the fact that this approach yields a data set accessible to human manual validation. With LC resolution power available to the human expert (and resorting to comparatively simple mixtures), all peaks detected in the integrated mixture can still be manually verified. Exemplary peak picking results are illustrated below.

Comparative results


We chose to compare NITPICK to a conceptually similar, model-based approach called pepex [30]. In contrast to model-free approaches and in accordance with NITPICK, pepex models observed spectra based on a linear mixture model, which is augmented by a complexity constraint. It uses the averagine model to describe unknown features and is capable of terminating its feature selection routine after a sufficient number of basis functions has been selected. However, as the publicly available implementation of the pepex approach is limited to charge state z = 1 data sets, NITPICK comparison against pepex was limited to the simulated data set.

For the analysis, the pepex algorithm was tailored to the problem at hand: its parameters were heavily optimized to maximize peak picking performance on the simulation data set. As a consequence, the reported results underestimate the pepex generalization error and overestimate its performance (see Additional file 4). For NITPICK, no specific parameter optimization was carried out, postprocessing was kept to a minimum (G = 3), and the reported results are representative (see Additional file 5).


We also compared NITPICK's ability to extract peak information from a retention time integrated mixture spectrum against the proprietary MarkerView application (Applied Biosystems/MDS Sciex, Concord, Canada) version 1.2, which includes an LC/MS peak picking algorithm. In contrast to NITPICK, MarkerView was provided with the original LC/MS data set and thus had retention time information available. Peak picking was carried out in the m/z 400–1400 range and detected peaks were manually validated (see Additional files 6 and 7).


Stoichiometry models

In comparison (see figure figure3,3, classical averagine in dashed black, fractional averagine in solid red), Senko's classical averagine [25] features a larger number of very small deviances from the truth than fractional averagine. This is caused by the rounding to integers property of the classical approach, yielding exact models more often. At the same time, the deviance distribution of the fractional averagine model has a significantly lighter tail, i.e. the model generates significantly less stoichiometries whose theoretical isotope distributions have large deviations. The cumulative distribution based on the fractional averagine model approaches 1 more quickly, and its use yields an overall decrease in theoretical isotope distribution deviations. This finding is supported by the corresponding one-sided non-parametric Mann-Whitney test (p < 2.6 × 10-11). Because the overall impact on the peak picking performance depends on the squared mean error magnitude (7.6 × 10-4 for classical averagine, 6.3 × 10-4 for fractional averagine, corresponding to a 17% decrease for fractional averagine), fractional averagine clearly is the preferable model.

Peak picking

Simulation data set

Figure Figure44 shows the results for the peak detection performance analysis. As expected, ACC, NPV and PPV improve with increasing SNR. Postprocessing causes a decrease in NPV and an increase in PPV for all SNR levels as the removal of spurious peaks decreases FP but also, erroneously, increases FN. The ACC plot (top left) illustrates the fact that NITPICK is successful at simultaneously maximizing PPV and NPV. Postprocessing can then be used to trade specificity for sensitivity as supported by the sensitivity-specificity trace in figure figure44 (bottom right). Here, each dot marks sensitivity and specificity of a given NITPICK postprocessing parameterization. Lines connect points of different SNRs. As expected, the introduction of a postprocessing step increases specificity and decreases sensitivity. Further analysis of FNs in the simulated data reveals that false negatives are predominantly due to low-intensity components in complex mixtures (data not shown).

Figure 4
Evaluation and comparison with the pepex algorithm on simulated data. Accuracy (top left), negative predictive values (top right), positive predictive values (bottom left) and sensitivity-specificity traces (bottom right). Plots show NITPICK results ...

Comparative results

In comparison with pepex, NITPICK exhibits better results with respect to all statistical measures in figure figure4.4. It is especially obvious that pepex suffers from a severe increase in false positives (FPs) for very low SNR situations, yielding significant decreases in accuracy (ACC) and specificity (SP). For PPV, although the pepex approach outperforms NITPICK when no postprocessing is applied, it is inferior to the full NITPICK algorithm with simple spurious peak removal corresponding to eq. (12). With respect to sensitivity (SE) and specificity (SP), figure figure44 reveals constant high (above 0.99) and superior specificity values for NITPICK at greatly increased sensitivity. Thus one can conclude that the NITPICK algorithm is more sensitive than pepex and, at the same time, provides picked peaks with higher confidence.

Real-world data set

We give peak picking illustrations for the mass ranges m/z 507–525 (with a zoom on m/z 518–525), m/z 636–646, m/z 695–725 and m/z 775–782, detailing positive and negative peak picking performance aspects. In the m/z 507–525 mass range (figure (figure5),5), all picked peaks could be verified, including the monoisotopic masses of the mixture distribution with components located at m/z 523.23 (z=3) and m/z 523.82 (z=5). Upon re-examination of the raw data, we detected a missed low-intensity peak at m/z 515.76.

Figure 5
Peak picking in the m/z 507-525 mass range. Illustration of observed (top) and reconstructed (bottom) spectra. All detected peaks could be confirmed, including the monoisotopic masses of the mixture distribution with components located at m/z 523.23 ( ...

Figure Figure66 zooms onto two cases of overlapping isotope distributions in the m/z 518–525 mass range. At m/z 518.22 and m/z 519.11 NITPICK resolves two distinct monoisotopic masses, in spite of their unfavorable mass distance. Although the second isotope peak of the doubly charged ion with monoisotopic mass m/z 518.22 exhibits a heavy overlap with the monoisotopic peak of the ion at m/z 519.11, NITPICK is still able to correctly detect the monoisotopic peaks of the two isotope distributions. NITPICK also separates two isotope distributions located at m/z 523.23 (z=3) and m/z 523.82 (z=4). The detection of the monoisotopic mass at m/z 523.82 is particularly non-trivial because of its heavy overlap with an isotope peak of the isotope distribution located at m/z 523.23 and also because the detected monoisotopic mass peak at m/z 523.82 is not the most abundant peak within its isotope distribution.

Figure 6
Zoom on the m/z 518–525 mass range. NITPICK proves capable of resolving overlapping isotope distributions and assigning correct monoisotopic masses for the distributions located at m/z 518.22 and 519.11 and at m/z 523.23 and 523.82. See text ...

In the m/z 636–646 mass range (figure (figure7)7) we observe an example of incomplete unmixing: the isotope distribution (z=3) with monoisotopic mass located at m/z 636.29 heavily overlaps the distribution (z=3) located at m/z 636.64 (left triangle marker). The overlap proves inseparable and the monoisotopic mass of the second distribution is wrongly detected at m/z 636.96. Further, due to conservative noise level/complexity estimation, the isotope distribution located at m/z 642.33 (right triangle marker) is not detected. Note that in both of the correctly detected distributions located at m/z 636.29 and m/z 639.65, the monoisotopic mass peak does not correspond to the most prominent peak.

Figure 7
Peak picking results in the m/z 636–646 mass range. Illustration of observed (top) and reconstructed (bottom) spectra. At m/z 636.64 and m/z 636.96 we observe incomplete unmixing: The isotope distribution (z=3) with monoisotopic mass m0 located ...

In the m/z 695–725 mass range (figure (figure8),8), with one exception, all detected peaks could be verified. The wrongly detected peak at m/z 714.29 corresponds to the first isotope peak of the isotope distribution located at m/z 713.78 (z = 2). Especially in the m/z 718 to m/z 724 region the algorithm proves capable of resolving nontrivial low-intensity mixtures.

Figure 8
Peak picking in the m/z 695–725 mass range. Illustration of observed (top) and reconstructed (bottom) spectra. With a single exception, all detected peaks could be manually confirmed. The peak detected at m/z 714.29 corresponds to the first ...

In the m/z 775–782 range (figure (figure9),9), the separation of two heavily overlapping isotope distribution clearly illustrates the benefits of NITPICK's intensity model-based approach to the peak picking/feature extraction problem: the second isotope peak of the isotope distribution located at m/z 779.32 (z=2) and the monoisotopic peak of the distribution located at m/z 780.35 (z=2) overlap completely and can only be distinguished by taking intensity information into account.

Figure 9
Observed (top) and reconstructed (bottom) mass spectrum in the m/z 775–782 range. The separation of two heavily overlapping isotope distribution clearly illustrates the benefits of NITPICK's intensity model-based approach to the peak picking/feature ...

Overall, the results obtained on real-world data are in agreement with simulation results: after manual validation of 192 peaks detected in the real-world dataset, we observe 127 true positives, yielding a positive predictive value of PPV = 66.15%.

Comparison with MarkerView

On the BSA data set, MarkerView detected 388 peaks, for 96 (24.7%) of which charge state information was available. Peaks without charge state assignment were counted as true peaks if their detected mass/charge ratio was correct. This resulted in 205 true positives for 82 (40.0%) of which charge state information was available. In comparison to NITPICK, this yields a sensitivity ratio of SER=SEMarkerViewSENITPICK=205127=1.61 and a positive predictive value of PPV = 0.53.

As expected, with retention time information available, MarkerView manages to detect a significantly larger number of peaks. Surprisingly, though, retention time information did not contribute to an increased PPV. The partial lack of charge state information also caused the performance interpretation to favor MarkerView: for peaks with correct mass/charge ratio, we assumed completely error-free charge state assignments, which is unlikely to hold true in reality. In contrast, in absence of retention time information, NITPICK delivered charge state information for each and every peak and peaks were counted as true positives if and only if their assigned charge state was correct. MarkerView's PPV and SER are subject to overestimation, whereas NITPICK's PPV is not. Even under this pro-MarkerView bias, if joint maximization of PPV and sensitivity is desired, NITPICK arguably proved competitive with MarkerView: despite the 1.6-fold increase in sensitivity, only slightly more than half of the peaks reported by MarkerView are true positives.

Analysis CPU time on the real-world spectrum was 114s on a 2 GHz AMD Opteron machine. Measurements are based on native, interpreted R code. Preliminary tests with an in-house C++ implementation (to be published elsewhere) yielded a speed increase by a factor of ≈ 20.

Conclusion and perspectives


We present NITPICK, an iterative, non-greedy, globally optimal mixture modeling approach for feature extraction from multicomponent mass spectra. The calculation of the set of explanatory theoretical isotope distributions is based on fractional averagine, a mass error-free extension to the well-known averagine [8] model. Subsequent feature selection is driven by a modified least angle regression [8] algorithm for which we derived a suitable, statistically motivated early stopping criterion. Experiments show that NITPICK is able to unmix and deconvolve complex mixture mass spectra. The algorithm was thoroughly evaluated on simulated and real-world data sets and was found to perform better than a conceptually similar algorithm. NITPICK was even found to deliver competitive results when compared against a vendor-supplied algorithm which, in contrast to NITPICK, had retention time resolution available.

We would like to note that although the analysis at hand was confined to a proteomics data set, the application of the proposed methodology is in no way limited to this type of data and can easily be adapted to similar problems outside the field of proteomics.

NITPICK is available as software package for the R programming language and can be downloaded from http://hci.iwr.uni-heidelberg.de/mip/proteomics/.


The constrained least squares regression model in equation (3) implicitly assumes Gaussian noise on the observed spectra. Especially with low-intensity time-of-flight spectra the Gaussian approximation is crude, yielding suboptimal estimates. The incorporation of a data type- and intensity-dependent procedure pursuing a suitable Poisson regression approach [36] in appropriate cases could improve on this shortcoming.

The non-negative least squares step in equation (6) assumes error-free basis functions ϕi. Although fractional averagine improves over the classical averagine model, this assumption is still violated. Possible remedies include direct intensity estimation techniques [43,44] and enhanced sparse feature selection methodology which allows for errors in explanatory variables. Alternatively, extended stoichiometry models could provide problem-tailored basis functions if model bias is not an issue.

For charge states z < 3 and mass ranges m/z ≲ 1400, there exist so-called forbidden regions [45] within the mass spectrum, i.e. mass ranges which are inaccessible to peptides (including modifications). Such information has been reported to be suitable as a preprocessing filter [31].

Further computational efficiency could be achieved by a complexity-driven hierarchical estimation approach, resorting to subtractive feature extraction for simple signals and to the full mixture modeling for complex samples only.


A Computation of fractional averagine

For the computation of the isotopic distribution of fractional averagine, we build on the fact that the distribution of the isotopes of an element follows a multinomial [33]. The multinomial is discrete, hence for fractional counts of events we can interpolate between the two adjacent integer multinomials for each element such that

P n = c ( X 1 = x 1 , ... , X k 1 = x k 1 ) = ( c c ) P n = c ( X 1 = x 1 , ... , X k 1 = x k 1 ) + ( c c ) P n = c ( X 1 = x 1 , ... , X k 1 = x k 1 )

with ⌈c⌉ = minj∈ℕ(j c), ⌊c⌋ = maxj∈ℕ(j c) and Xi representing the number of times the ith isotope of an element occurs. Under the (reasonable) assumption of independence of the atomic distributions of the elements, the resulting joint distribution for a molecule follows from the multiplication of the distributions of its elements.

By changing the order of multiplication and separating the highest possible integer number from the remaining fractional numbers, the calculation of fractional averagine can be related to the Mercury7 algorithm [14], yielding a highly efficient calculation scheme (see eq. (2)). For the convolution of the Mercury integer results and the fractionals we follow [46]: Let gp(i) represent the ith element of the probability vector of the first and fp(j) the jth element of the second distribution, then

h p ( k ) = i g p ( i ) f p ( k i )

can be used to compute hp(k), the kth element of the new vector of probabilities for the joint distribution. Similarly, the corresponding mass vector hm can be computed using the probability vectors gp and fp and the corresponding mass vectors gm and fm using

h m ( k ) = ( i g p ( i ) f p ( k i ) ) 1 i g p ( i ) f p ( k i ) ( g m ( i ) + f m ( k i ) ) .

B Proof of the monotony of the GDF for the non-negative lasso

As long as a given set ΦA(λ) is valid, it can be easily shown that the GDF are monotonous in λ. Starting with the GDF(λ) of equation (10),

GDF ( λ ) = s T 1 σ 2 Φ A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 ( Φ A ( λ ) T 1 2 λ 1 A ( λ ) ) = 1 σ 2 i = 1 N s i ( Φ A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 ( Φ A ( λ ) T s 1 2 λ 1 A ( λ ) ) ) i = 1 σ 2 i = 1 N s i ( Φ A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 Φ A ( λ ) T s ) i λ 1 2 σ 2 i = 1 N s i ( Φ A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 A ( λ ) ) i

To show that the GDF are monotonously increasing for decreasing values of λ, it suffices to analyze the following part of the formula,

i = 1 N ( s i ( Φ A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 A ( λ ) ) i ) = i = 1 N ( e i T ( Φ A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 A ( λ ) ) ) T ( e i T s ) = i = 1 N ( 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 Φ A ( λ ) T ) e i e i T s = ( 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 Φ A ( λ ) T ) I N s = ( 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 Φ A ( λ ) T ) s = j = 1 K c ^ j L S A ( λ )

where ei denotes the ith canonical unit vector of length N and IN=i=1NeieiT is the identity matrix of size N.

c^jLSA(λ) is the least squares regression coefficient for the corresponding least squares problem of the active set. It is known that all non-negative lasso coefficients c^A(λ)jq are greater or equal zero, so

j = 1 K c ^ A ( λ ) j q 0 ( e q .   9 ) ( 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 Φ A ( λ ) T ) s 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 2 λ 1 A ( λ ) 0 ( 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 Φ A ( λ ) T ) s 1 2 λ 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 A ( λ ) 0 j = 1 K c ^ j L S A ( λ ) 1 2 λ 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 A ( λ ) 0

as ΦA(λ)TΦA(λ) is the inverse of a covariance matrix and, thus, positive-semidefinite, and λ is by definition always greater or equal 0. Thus, the second part of equation (16) is monotone with regard to λ and therefore the GDFs are monotone as long as a given active set is valid.

It remains to be shown that changes of ΦA(λ) do not influence the monotony, so it needs to be shown that neither the addition of ϕj to the set ΦA(λ) nor the removal of ϕk from ΦA(λ) lead to a decrease of cov(s, ΦA(λ)c^A(λ)q) as given in (10). A formal proof is given further below, nevertheless, this can also be argued intuitively.

In the non-negative LARS implementation as described above and in [39], a variable ϕj will be added to the active set ϕA(λ) only if it is positively correlated with the remaining residuals, i. e. if

cov ( ϕ j , s Φ A ( λ ) c ˆ A ( λ ) q ) > 0

This obviously leads to an increase of cov (s, ΦA(λ)c^A(λ)q) as less unexplained variation remains. A variable ϕk is removed from the active set ΦA(λ) only if cov (ϕk, s - ΦA(λ)c^A(λ)q) < 0, so if the residuals are negatively correlated with the variable its removal leads to an increase of cov (s, ΦA(λ)c^A(λ)q) as well.

Thus, as long as changes of the set ΦA(λ) appear one at a time (which is ensured by the active set implementation), they do not influence the monotonous character of the estimate of the degrees of freedom.

More formally, when a variable ϕj is added to the current set of variables ΦA(λ), the solution for ΦA(λ)+=ΦA(λ)ϕj can be constructed from the solution of ΦA(λ) in the following manner [39]:

Φ A ( λ ) + c ^ A ( λ ) + q = Φ A ( λ ) c ^ A ( λ ) q + γ ^ u A ( λ ) +


γ ^ = min j A ( λ ) C + { D ^ d ^ j B A ( λ ) b j } > 0

is strictly positive by definition and gives the magnitude of the change.

d ^ = Φ T ( s Φ A ( λ ) c ^ A ( λ ) q )

is the vector of the current correlation and

D ^ = max j { d ^ j | d ^ j > 0 } .

In addition,

B A ( λ ) = ( 1 A ( λ ) T ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 A ( λ ) ) 1 2


u A ( λ ) = Φ A ( λ ) B A ( λ ) ( Φ A ( λ ) T Φ A ( λ ) ) 1 1 A ( λ )

leading to

b = Φ T u A ( λ ) .

We need to show that

cov ( s , Φ A ( λ ) + c ^ A ( λ ) + q ) cov ( s , Φ A ( λ ) c ^ A ( λ ) q ) cov ( s , Φ A ( λ ) + c ^ A ( λ ) + q Φ A ( λ ) c ^ A ( λ ) q ) 0 s T ( Φ A ( λ ) + c ^ A ( λ ) + q Φ A ( λ ) c ^ A ( λ ) q ) 0.

Using the construction of ΦA(λ)+c^A(λ)+q from above, this leads to

s T ( Φ A ( λ ) c ^ A ( λ ) q + γ ^ u A ( λ ) + Φ A ( λ ) c ^ A ( λ ) q ) 0 s T ( γ ^ u A ( λ ) + ) 0.

It is known from its definition that γ^ is strictly positive, thus it can be dropped from the inequality and

s T u + 0 s T Φ A ( λ ) + B A ( λ ) + ( Φ A ( λ ) + T Φ A ( λ ) + ) 1 1 A ( λ ) + 0.

It is also known from the idea of the non-negative lasso that all variables in XA are positively correlated with the remaining residuals, so

cov ( Φ A ( λ ) , s Φ A ( λ ) c ^ A ( λ ) q ) 0 ( s Φ A ( λ ) c ^ A ( λ ) q ) T Φ A ( λ ) 0 s T Φ A ( λ ) ( Φ A ( λ ) c ^ A ( λ ) q ) T Φ A ( λ ) .

Using this result,

s T Φ A ( λ ) + B A ( λ ) + ( Φ A ( λ ) + T Φ A ( λ ) + ) 1 1 A ( λ ) + ( Φ A ( λ ) + c ^ A ( λ ) + q ) T Φ A ( λ ) + B A ( λ ) + ( Φ A ( λ ) + T Φ A ( λ ) + ) 1 1 A ( λ ) +  

holds true and it suffices to show that

( Φ A ( λ ) + c ^ A ( λ ) + q ) T Φ A ( λ ) + B A ( λ ) + ( Φ A ( λ ) + T Φ A ( λ ) + ) 1 1 A ( λ ) + 0 ( Φ A ( λ ) + c ^ A ( λ ) + q ) T u A + 0 c ^ A ( λ ) + q 1 T Φ A ( λ ) + T u A ( λ ) + 0.

When further recalling the fact from [39] that ΦA(λ)TuA(λ)=BA(λ)1A(λ), this can be reduced to

( c ^ A ( λ ) + q ) T B A ( λ ) + 1 A ( λ ) + 0 ,

but as BA(λ)+ is strictly positive by definition, it follows that

( c ^ A ( λ ) + q ) T 1 A ( λ ) + 0 i ( c ^ A ( λ ) + q ) i 0.

This is always fulfilled for the non-negative lasso as it is the constraint on its initial optimization problem. The case of the removal of ϕk from ΦA(λ) can be argued almost identically with the only difference being that now

Φ A ( λ ) + c ^ A ( λ ) + q = Φ A ( λ ) c ^ A ( λ ) q + γ ˜ u A ( λ ) +


γ ˜ = min γ j > 0 { γ j }

which is also always positive and thus can be dropped from the resulting inequality in exactly the same fashion as γ^ could be dropped for the case of the addition of a variable. Consequently, changes in ΦA(λ) do not change the monotony of the GDF estimate.

C Lower bound properties of BICmin

BICmin is a lower bound for BIC, if ∀k i

BICmin(i) ≤ BIC(k),

which equals

N σ ε 2 MSE + d f ( λ i ) log N N σ ε 2 MSE ( λ i ) + d f ( λ k ) log N

which is always fulfilled because MSE ≤ MSE(λi) and df (λi) ≤ df (λk) for i k and N ≥ 1, σε2 > 0.

D SNR definition for simulated spectra

Given the undistorted simulated signal s, the effect of Poisson noise is simulated with si vi, where vi is drawn from a Poisson distribution with mean ksi + 1. The signal-to-noise ratio (SNR) thus depends on the parameter k. In order to determine k for a selected set of SNR values, we consider the definition

SNR σ s 2 σ n 2 .

The empirical variance of the original signal s multiplied by a scalar k is defined as

σ s 2 ( k ) k 2 i = 1 N ( s i s ¯ ) 2 ,

where s¯ denotes the mean over all si. For Poisson noise, location and dispersion parameters coincide, i.e. with X ~ P(λ) we have Var(X) = E(X) = λ, and we approximate the variance of a set of Poisson variables ni ~ P(ksi), i = 1, ..., N by their average

σ n 2 ( k ) 1 N i = 1 N k s i .

For a given SNR, this allows the estimation of k because

SNR = σ s 2 ( k ) σ n 2 ( k ) = k σ s 2 σ n 2

and thus

k = σ n 2 σ s 2 SNR .

Authors' contributions

BYR and MK have developed the methodology, implemented the software, carried out the data analysis and drafted the manuscript. HS and JAJS have contributed to the basic methodology and the manuscript, carried out critical review and provided application feedback and evaluation for the proposed methods. FAH has suggested the fractional averagine approach, and has contributed to the manuscript and the overall project design. All authors have read and approved the final manuscript.

Supplementary Material

Additional file 1:

A zip folder containing all simulation files (R data files).

Additional file 2:

The zipped original LC/MS .wiff-file on which MarkerView was run (as acquired by the AB/Sciex QStar instrument)

Additional file 3:

The original spectrum of BSA-sample.wiff integrated over retention time (23.817-29.278 minutes) on which NITPICK was run.

Additional file 4:

A zip-folder containing all pepex results on the simulated data.

Additional file 5:

A zip-folder containing all NITPICK results on the simulated data sets and for each SNR (SNR in 5, 10, 25, 50, 100) a R data file called

• resultList_0_’SNR’_0.1.RDA gives the peaks found by NITPICK for all spectra of a certain SNR

• lengthResultList_0_’SNR’_0.1.RDA gives the number of peaks found by NITPICK for each spectrum

• correct_0_’SNR’_0.1.RDA gives the number of correctly identified peaks found by NITPICK for each spectrum

• tooMany_0_’SNR’_0.1.RDA gives the number of incorrectly identified peaks found by NITPICK for each spectrum

• pp_resultList_0_3_0_’SNR’_0.1.RDA gives the peaks found by NITPICK for all spectra of a certain SNR after postprocessing with g=3

• lengthResultList_0_3_0_’SNR’_0.1.RDA gives the number of peaks found by NITPICK for each spectrum after postprocessing with g=3

• correct_0_3_0_’SNR’_0.1.RDA gives the number of correctly identified peaks found by NITPICK for each spectrum after postprocessing with g=3

• tooMany_0 3_0_’SNR’_0.1.RDA gives the number of incorrectly identified peaks found by NITPICK for each spectrum after postprocessing with g=3

Additional file 6:

Excel sheet containing the peaks detected by NITPICK (mz-position, charge, intensity) as well as their manual validation.

Additional file 7:

Excel sheet containing the peaks detected by MarkerView (mz-position, charge, if available) as well as their manual validation.


The authors would like to thank Yin Yin Lin (Dept. of Pathology, Children's Hospital, Boston, MA, USA) for LC/MS data acquisition, Lyle Burton (AB/MDS Sciex, Concord, Canada) for MarkerView 1.2 evaluation versions, Ullrich Köthe, Linus Görlitz, Björn Menze, Michael Kelm (Interdisciplinary Center for Scientific Computing (IWR), University of Heidelberg, Germany), and Flavio Monigatti (Dept. of Pathology, Children's Hospital, Boston, MA, USA) for comments, suggestions, and fruitful discussions. We gratefully acknowledge financial support by the Hans L. Merkle foundation (M.K.), the Karl Steinbuch Scholarship (B.Y.R.), dm/Filiadata GmbH (B.Y.R.), Robert Bosch GmbH (F.A.H.), the Children's Hospital Trust (J.A.J.S. and H.S.), and the DFG under grant no. HA4364/2-1 (B.Y.R., F.A.H).


  • Jensen ON. Interpreting the protein language using proteomics. Nature Reviews Molecular Cell Biology. 2006;7:391–403. doi: 10.1038/nrm1939. [PubMed] [Cross Ref]
  • Beretta L. Proteomics from the Clinical Perspective: Many Hopes and Much Debate. Nature Methods. 2007;4:785–786. doi: 10.1038/nmeth1007-785. [PubMed] [Cross Ref]
  • Schwartz SA, Weil RJ, Johnson MD, Toms SA, Caprioli RM. Protein Profiling in Brain Tumors Using Mass Spectrometry: Feasibility of a New Technique for the Analysis of Protein Expression. Clinical Cancer Research. 2004;10:981–987. doi: 10.1158/1078-0432.CCR-0927-3. [PubMed] [Cross Ref]
  • Claydon MA, Davey SN, Edwards-Jones V, Gordon DB. The Rapid Identification of Intact Microorganisms Using Mass Spectrometry. Nature Biotechnology. 1996;14:1584–1586. doi: 10.1038/nbt1196-1584. [PubMed] [Cross Ref]
  • Pineda FJ, Antoine MD, Demirev PA, Feldman AB, Jackman J, Longenecker M, Lin JS. Microorganism Identification by Matrix-Assisted Laser/Desorption Ionization Mass Spectrometry and Model-Derived Ribosomal Protein Biomarkers. Analytical Chemistry. 2003;75:3817–3822. doi: 10.1021/ac034069b. [PubMed] [Cross Ref]
  • Zhang Z, Marshall AG. A Universal Algorithm for Fast and Automated Charge State Deconvolution of Electrospray Mass-to-Charge Ratio Spectra. Journal of the American Society for Mass Spectrometry. 1998;9:225–33. doi: 10.1016/S1044-0305(97)00284-5. [PubMed] [Cross Ref]
  • Yu W, Wu B, Lin N, Stone K, Williams K, Zhao H. Detecting and Aligning Peaks in Mass Spectrometry Data with Applications to MALDI. Computational Biology and Chemistry. 2006;30:27–38. doi: 10.1016/j.compbiolchem.2005.10.006. [PubMed] [Cross Ref]
  • Senko M, Beu S, McLafferty F. Determination of Monoisotopic Masses and Ion Populations for Large Biomolecules from Resolved Isotopic Distributions. Journal of the American Society for Mass Spectrometry. 1995;6:229–233. doi: 10.1016/1044-0305(95)00017-8. [PubMed] [Cross Ref]
  • Horn DM, Zubarev RA, McLafferty FW. Automated Reduction and Interpretation of High Resolution Electrospray Mass Spectra of Large Molecules. Journal of the American Society for Mass Spectrometry. 2000;11:320–332. doi: 10.1016/S1044-0305(99)00157-9. [PubMed] [Cross Ref]
  • Wehofsky M, Hoffmann R, Hubert M, Spengler B. Isotopic Deconvolution of Matrix-Assisted Laser Desorption/Ionization Mass Spectra for Substance-Class Specific Analysis of Complex Samples. European Journal of Mass Spectrometry. 2001;7:39–46. doi: 10.1255/ejms.387. [Cross Ref]
  • Gras R, Muller M, Gasteiger E, Gay S, Binz PA, Bienvenut W, Hoogland C, Sanches JC, Bairoch A, Hochstrasser DF, Appel RD. Improving Protein Identification from Peptide Mass Fingerprinting through a Parameterized Multi-Level Scoring Algorithm and an Optimized Peak Detection. Electrophoresis. 1999;20:3535–3550. doi: 10.1002/(SICI)1522-2683(19991201)20:18<3535::AID-ELPS3535>3.0.CO;2-J. [PubMed] [Cross Ref]
  • Rockwood A, Van Orden S, Smith R. Rapid Calculation of Isotope Distributions. Analytical Chemistry. 1995;67:2699–2704. doi: 10.1021/ac00111a031. [Cross Ref]
  • Rockwood A, Van Orden SL, Smith RD. Ultrahigh-Speed Calculation of Isotope Distributions. Analytical Chemistry. 1996;68:2027–2030. doi: 10.1021/ac951158i. [PubMed] [Cross Ref]
  • Rockwood A, Haimi P. Efficient Calculation of Accurate Masses of Isotopic Peaks. Journal of the American Society for Mass Spectrometry. 2006;17:415–419. doi: 10.1016/j.jasms.2005.12.001. [PubMed] [Cross Ref]
  • Yergey JA. A General Approach to Calculating Isotopic Distributions for Mass Spectrometry. International Journal of Mass Spectrometry and Ion Physics. 1983;52:337–349. doi: 10.1016/0020-7381(83)85053-0. [Cross Ref]
  • Senko M. Isopro 3.0. 1997 http://members.aol.com/msmssoft/
  • Breen EJ, Hopwood FG, Williams KL, Wilkins MR. Automatic Poisson Peak Harvesting for High Throughput Protein Identification. Electrophoresis. 2000;21:2243–2251. doi: 10.1002/1522-2683(20000601)21:11<2243::AID-ELPS2243>3.0.CO;2-K. [PubMed] [Cross Ref]
  • Chen L, Sze SK, Yang H. Automated Intensity Descent Algorithm for Interpretation of Complex High-Resolution Mass Spectra. Analytical Chemistry. 2006;78:5006–5018. doi: 10.1021/ac060099d. [PubMed] [Cross Ref]
  • Kaur P, O'Connor PB. Algorithms for automatic interpretation of high resolution mass spectra. Journal of the American Society for Mass Spectrometry. 2006;17:459–468. doi: 10.1016/j.jasms.2005.11.024. [PubMed] [Cross Ref]
  • Szymura JA, Lamkiewicz J. Band Composition Analysis: a new Procedure for Deconvolution of the Mass Spectra of Organometallic Compounds. Journal of Mass Spectrometry. 2003;38:817–822. doi: 10.1002/jms.499. [PubMed] [Cross Ref]
  • Wehofsky M, Hoffmann R. Automated Deconvolution and Deisotoping of Electrospray Mass Spectra. Journal of Mass Spectrometry. 2002;37:223–229. doi: 10.1002/jms.278. [PubMed] [Cross Ref]
  • Zhang X, Hines W, Adamec J, Asara JM, Naylor S, Regnier FE. An Automated Method for the Analysis of Stable Isotope Labeling Data in Proteomics. Journal of the American Society for Mass Spectrometry. 2005;16:1181–1191. doi: 10.1016/j.jasms.2005.03.016. [PubMed] [Cross Ref]
  • Mason CJ, Therneau TM, Eckel-Passow JE, Johnson KL, Oberg AL, Olson JE, Nair KS, Muddiman DC, Bergen HRI. A Method for Automatically Interpreting Mass Spectra of 18O Labeled Isotopic Clusters. Molecular & Cellular Proteomics. 2006;6:305–318. doi: 10.1074/mcp.M600148-MCP200. [PubMed] [Cross Ref]
  • Wang W, Zhou H, Lin H, Roy S, Shaler TA, Hill LR, Norton S, Kumar P, Anderle M, Becker CH. Quantification of Proteins and Metabolites by Mass Spectrometry without Isotopic Labeling or Spiked Standards. Analytical Chemistry. 2003;75:4818–4826. doi: 10.1021/ac026468x. [PubMed] [Cross Ref]
  • Senko MW, Beu SC, McLafferty FW. Automated Assignment of Charge States from Resolved Isotopic Peaks for Multiply Charged Ions. Journal of the American Society for Mass Spectrometry. 1995;6:52–56. doi: 10.1016/1044-0305(94)00091-D. [PubMed] [Cross Ref]
  • Tabb DL, Shah MB, Strader MB, Conelly HM, Hettich RL, Hurst GB. Determination of Peptide and Protein ion Charge States by Fourier Transformation of Isotope-Resolved Mass Spectra. Journal of the American Society for Mass Spectrometry. 2006;17:903–915. doi: 10.1016/j.jasms.2006.02.003. [PubMed] [Cross Ref]
  • Listgarten J, Emili A. Statistical and Computational Methods for Comparative Proteomic Profiling Using Liquid Chromatography-Tandem Mass Spectrometry. Molecular and Cellular Proteomics. 2005;4:419–434. doi: 10.1074/mcp.R500005-MCP200. [PubMed] [Cross Ref]
  • Fernández-de-Cossio J, Gonzalez LJ, Satomi Y, Betancourt L, Ramos Y, Huerta V, Besada V, Padron G, Minamino N, Takao T. Automated Interpretation of Mass Spectra of Complex Mixtures by Matching of Isotope Peak Distributions. Rapid Communications in Mass Spectrometry. 2004;18:2465–2472. doi: 10.1002/rcm.1647. [PubMed] [Cross Ref]
  • Roussis SG, Proulx R. Reduction of Chemical Formulas from the Isotopic Peak Distributions of High-Resolution Mass Spectra. Analytical Chemistry. 2003;75:1470–1482. doi: 10.1021/ac020516w. [PubMed] [Cross Ref]
  • Samuelsson J, Dalevi D, Levander F, Rögnvaldsson T. Modular, Scriptable and Automated Analysis Tools for High-Throughput Peptide Mass Fingerprinting. Bioinformatics. 2004;20:3628–3635. doi: 10.1093/bioinformatics/bth460. [PubMed] [Cross Ref]
  • Du P, Angeletti RH. Automatic Deconvolution of Isotope-Resolved Mass Spectra Using Variable Selection and Quantized Peptide Mass Distribution. Analytical Chemistry. 2006;78:3385–3392. doi: 10.1021/ac052212q. [PubMed] [Cross Ref]
  • Tibshirani R. Regression Shrinkage and Selection via the LASSO. Journal of the Royal Statistical Society. 1996;Series B 58:267–288.
  • Kaur P, O'Connor PB. Use of Statistical Methods for Estimation of Total Number of Charges in a Mass Spectrometry Experiment. Analytical Chemistry. 2004;76:2756–2762. doi: 10.1021/ac035334w. [PubMed] [Cross Ref]
  • Casella G, Berger RL. Statistical Inference. Duxbury Press; 2001.
  • Lawson CL, Hanson RJ. Solving Least Squares Problems. Prentice-Hall, Englewood Cliffs, N J; 1974.
  • Park MY, Hastie T. An L1 Regularization-path Algorithm for Generalized Linear Models. Journal of the Royal Statistical Society, Series B. 2007;69:659–677. doi: 10.1111/j.1467-9868.2007.00607.x. [Cross Ref]
  • Hastie T, Tibshirani R, Friedman J. The Elements of Statistical Learning; Data Mining, Inference, and Prediction. Springer Verlag New York; 2001.
  • Ye J. On Measuring and Correcting the Effects of Data Mining and Model Selection. Journal of the American Statistical Association. 1998;93:120–131. doi: 10.2307/2669609. [Cross Ref]
  • Efron B, Hastie T, Johnstone I, Tibshirani R. Least Angle Regression. Annals of Statistics. 2004;32:407–499. doi: 10.1214/009053604000000067. [Cross Ref]
  • Zou H, Hastie T, Tibshirani R. On the "Degrees of Freedom" of the Lasso. Annals of Statistics. 2007;35:2173–2192. doi: 10.1214/009053607000000127. [Cross Ref]
  • Bairoch A, Apweiler R. The SWISS-PROT Protein Sequence Database and its Supplement TrEMBL in 2000. Nucleic Acids Research. 2000;28:45–48. doi: 10.1093/nar/28.1.45. [PMC free article] [PubMed] [Cross Ref]
  • Tibshirani R, Hastie T, Narasimhan B, Soltys S, Shi G, Koong A, Le QT. Sample Classification from Protein Mass Spectrometry, by Peak Probability Contrasts. Bioinformatics. 2004;20:3034–3044. doi: 10.1093/bioinformatics/bth357. [PubMed] [Cross Ref]
  • Wallace WE, Kearsley AJ, Guttman CM. An Operator-Independent Approach to Mass Spectral Peak Identification and Integration. Analytical Chemistry. 2004;76:2446–2452. doi: 10.1021/ac0354701. [PubMed] [Cross Ref]
  • Kearsley AJ, Wallace WE, Bernal J, Guttman CM. A Numerical Method for Mass Spectral Data Analysis. Applied Mathematics Letters. 2005;18:1412–1417. doi: 10.1016/j.aml.2005.02.033. [Cross Ref]
  • Mann M. Useful Tables of Possible and Probable Peptide Masses. 43rd Conference on Mass Spectrometry and Allied Topics. 1995.
  • Rockwood AL, Kushnir MM, Nelson GJ. Dissociation of individual isotopic peaks: predicting isotopic distributions of product ions in MSn. Journal of the American Society for Mass Spectrometry. 2003;14:311–22. doi: 10.1016/S1044-0305(03)00062-X. [PubMed] [Cross Ref]

Articles from BMC Bioinformatics are provided here courtesy of BioMed Central
PubReader format: click here to try


Save items

Related citations in PubMed

See reviews...See all...

Cited by other articles in PMC

See all...


  • Compound
    PubChem chemical compound records that cite the current articles. These references are taken from those provided on submitted PubChem chemical substance records. Multiple substance records may contribute to the PubChem compound record.
  • MedGen
    Related information in MedGen
  • PubMed
    PubMed citations for these articles
  • Substance
    PubChem chemical substance records that cite the current articles. These references are taken from those provided on submitted PubChem chemical substance records.

Recent Activity

Your browsing activity is empty.

Activity recording is turned off.

Turn recording back on

See more...