Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages

ProteinQuantifier

Compute peptide and protein abundances from annotated feature/consensus maps.

potential predecessor tools $ \longrightarrow $ ProteinQuantifier $ \longrightarrow $ potential successor tools
IDMapper external tools
e.g. for statistical analysis
FeatureLinkerUnlabeled
(or another feature grouping tool)

Reference:
Weisser et al.: An automated pipeline for high-throughput label-free quantitative proteomics (J. Proteome Res., 2013, PMID: 23391308).

Quantification is based on the intensity values of the features in the input. Feature intensities are first accumulated to peptide abundances, according to the peptide identifications annotated to the features/feature groups. Then, abundances of the peptides of a protein are averaged to compute the protein abundance.

The peptide-to-protein step uses the (e.g. 3) most abundant proteotypic peptides per protein to compute the protein abundances. This is a general version of the "top 3 approach" (but only for relative quantification) described in:
Silva et al.: Absolute quantification of proteins by LCMSE: a virtue of parallel MS acquisition (Mol. Cell. Proteomics, 2006, PMID: 16219938).

Only features/feature groups with unambiguous peptide annotation are used for peptide quantification, and generally only proteotypic peptides (i.e. those matching to exactly one protein) are used for protein quantification. As an exception to this rule, if ProteinProphet results for the whole sample set are provided with the protxml option, or are already included in a featureXML input, also groups of indistinguishable proteins will be quantified. The reported quantity then refers to the total for the whole group.

Peptide/protein IDs from multiple identification runs can be handled, but will not be differentiated (i.e. protein accessions for a peptide will be accumulated over all identification runs).

Peptides with the same sequence, but with different modifications are quantified separately on the peptide level, but treated as one peptide for the protein quantification (i.e. the contributions of differently-modified variants of the same peptide are accumulated).

More information below the parameter specification.

The command line parameters of this tool are:

ProteinQuantifier -- Compute peptide and protein abundances
Version: 1.10.0 Mar  7 2013, 08:30:22, Revision: unknown

Usage:
  ProteinQuantifier <options>

Options (mandatory options marked with '*'):
  -in <file>*               Input file (valid formats: 'featureXML', 'consensusXML')
  -protxml <file>           ProteinProphet results (protXML converted to idXML) for the identification runs 
                            that were used to annotate the input.
                            Information about indistinguishable proteins will be used for protein quantifica
                            tion. (valid formats: 'idXML')
  -out <file>               Output file for protein abundances (valid formats: 'csv')
  -peptide_out <file>       Output file for peptide abundances (valid formats: 'csv')
  -mzTab_out <file>         Export to mzTab.
                            Either 'out', 'peptide_out', or 'mzTab_out' are required. They can be used toget
                            her. (valid formats: 'csv')
                            
  -top <number>             Calculate protein abundance from this number of proteotypic peptides (most abunda
                            nt first; '0' for all) (default: '3' min: '0')
  -average <choice>         Averaging method used to compute protein abundances from peptide abundances (defa
                            ult: 'median' valid: 'median', 'mean', 'sum')
  -include_all              Include results for proteins with fewer proteotypic peptides than indicated by 
                            'top' (no effect if 'top' is 0 or 1)
  -filter_charge            Distinguish between charge states of a peptide. For peptides, abundances will be 
                            reported separately for each charge;
                            for proteins, abundances will be computed based only on the most prevalent charg
                            e of each peptide.
                            By default, abundances are summed over all charge states.

Additional options for consensus maps:
  -consensus:normalize      Scale peptide abundances so that medians of all samples are equal
  -consensus:fix_peptides   Use the same peptides for protein quantification across all samples.
                            With 'top 0', all peptides that occur in every sample are considered.
                            Otherwise ('top N'), the N peptides that occur in the most samples (independentl
                            y of each other) are selected,
                            breaking ties by total abundance (there is no guarantee that the best co-ocurrin
                            g peptides are chosen!).

  -ratios                   Prints the log2 ratios of the abundance value to the output file. (log_2(x_0/x_0)
                            <sep> log_2(x_1/x_0) <sep> log_2(x_2/x_0) ....)
  -ratiosSILAC              Prints the SILAC log2 ratios for a triple SILAC experiment to the output file. 
                            Only performed if three maps are given, otherwise nothing will be seen in the
                            output file. (log_2(heavy/light) <sep> log_2(heavy/middle) <sep> log_2(middle/lig
                            ht)

Output formatting options:
  -format:separator <sep>   Character(s) used to separate fields; by default, the 'tab' character is used
  -format:quoting <method>  Method for quoting of strings: 'none' for no quoting, 'double' for quoting with 
                            doubling of embedded quotes,
                            'escape' for quoting with backslash-escaping of embedded quotes (default: 'doubl
                            e' valid: 'none', 'double', 'escape')
  -format:replacement <x>   If 'quoting' is 'none', used to replace occurrences of the separator in strings 
                            before writing (default: '_')

                            
Common TOPP options:
  -ini <file>               Use the given TOPP INI file
  -threads <n>              Sets the number of threads allowed to be used by the TOPP tool (default: '1')
  -write_ini <file>         Writes the default configuration file
  --help                    Shows options
  --helphelp                Shows all options (including advanced)

INI file documentation of this tool:

Legend:
required parameter
advanced parameter
+ProteinQuantifierCompute peptide and protein abundances
version1.10.0 Version of the tool that generated this parameters file.
++1Instance '1' section for 'ProteinQuantifier'
in Input fileinput file*.featureXML,*.consensusXML
protxml ProteinProphet results (protXML converted to idXML) for the identification runs that were used to annotate the input.
Information about indistinguishable proteins will be used for protein quantification.
input file*.idXML
out Output file for protein abundancesoutput file*.csv
peptide_out Output file for peptide abundancesoutput file*.csv
mzTab_out Export to mzTab.
Either 'out', 'peptide_out', or 'mzTab_out' are required. They can be used together.
output file*.csv
top3 Calculate protein abundance from this number of proteotypic peptides (most abundant first; '0' for all)0:∞
averagemedian Averaging method used to compute protein abundances from peptide abundancesmedian,mean,sum
include_allfalse Include results for proteins with fewer proteotypic peptides than indicated by 'top' (no effect if 'top' is 0 or 1)true,false
filter_chargefalse Distinguish between charge states of a peptide. For peptides, abundances will be reported separately for each charge;
for proteins, abundances will be computed based only on the most prevalent charge of each peptide.
By default, abundances are summed over all charge states.
true,false
ratiosfalse Prints the log2 ratios of the abundance value to the output file. (log_2(x_0/x_0) log_2(x_1/x_0) log_2(x_2/x_0) ....)true,false
ratiosSILACfalse Prints the SILAC log2 ratios for a triple SILAC experiment to the output file. Only performed if three maps are given, otherwise nothing will be seen in the output file. (log_2(heavy/light) log_2(heavy/middle) log_2(middle/light)true,false
log Name of log file (created only when specified)
debug0 Sets the debug level
threads1 Sets the number of threads allowed to be used by the TOPP tool
no_progressfalse Disables progress logging to command linetrue,false
testfalse Enables the test mode (needed for internal use only)true,false
+++consensusAdditional options for consensus maps
normalizefalse Scale peptide abundances so that medians of all samples are equaltrue,false
fix_peptidesfalse Use the same peptides for protein quantification across all samples.
With 'top 0', all peptides that occur in every sample are considered.
Otherwise ('top N'), the N peptides that occur in the most samples (independently of each other) are selected,
breaking ties by total abundance (there is no guarantee that the best co-ocurring peptides are chosen!).
true,false
+++formatOutput formatting options
separator Character(s) used to separate fields; by default, the 'tab' character is used
quotingdouble Method for quoting of strings: 'none' for no quoting, 'double' for quoting with doubling of embedded quotes,
'escape' for quoting with backslash-escaping of embedded quotes
none,double,escape
replacement_ If 'quoting' is 'none', used to replace occurrences of the separator in strings before writing

Output format

The output files produced by this tool have a table format, with columns as described below:

Protein output (one protein/set of indistinguishable proteins per line):

Peptide output (one peptide or - if filter_charge is set - one charge state of a peptide per line):

Protein quantification examples

While quantification on the peptide level is fairly straight-forward, a number of options influence quantification on the protein level - especially for consensusXML input. The three parameters top, include_all and consensus:fix_peptides determine which peptides are used to quantify proteins in different samples.

As an example, consider a protein with four proteotypic peptides. Each peptide is detected in a subset of three samples, as indicated in the table below. The peptides are ranked by abundance (1: highest, 4: lowest; assuming for simplicity that the order is the same in all samples).

sample 1 sample 2 sample 3
peptide 1 X X
peptide 2 X X
peptide 3 X X X
peptide 4 X X

Different parameter combinations lead to different quantification scenarios, as shown here:

parameters
"*": no effect in this case
peptides used for quantification
"(...)": not quantified here because ...
explanation
top include_all c.:fix_peptides sample 1 sample 2 sample 3
0 * no 1, 2, 3, 4 2, 3, 4 1, 3 all peptides
1 * no 1 2 1 single most abundant peptide
2 * no 1, 2 2, 3 1, 3 two most abundant peptides
3 no no 1, 2, 3 2, 3, 4 (too few peptides) three most abundant peptides
3 yes no 1, 2, 3 2, 3, 4 1, 3 three or fewer most abundant peptides
4 no * 1, 2, 3, 4 (too few peptides) (too few peptides) four most abundant peptides
4 yes * 1, 2, 3, 4 2, 3, 4 1, 3 four or fewer most abundant peptides
0 * yes 3 3 3 all peptides present in every sample
1 * yes 3 3 3 single peptide present in most samples
2 no yes 1, 3 (peptide 1 missing) 1, 3 two peptides present in most samples
2 yes yes 1, 3 3 1, 3 two or fewer peptides present in most samples
3 no yes 1, 2, 3 (peptide 1 missing) (peptide 2 missing) three peptides present in most samples
3 yes yes 1, 2, 3 2, 3 1, 3 three or fewer peptides present in most samples

Further considerations for parameter selection

With filter_charge and average, there is a trade-off between comparability of protein abundances within a sample and of abundances for the same protein across different samples.
Setting filter_charge may increase reproducibility between samples, but will distort the proportions of protein abundances within a sample. The reason is that ionization properties vary between peptides, but should remain constant across samples. Filtering by charge state can help to reduce the impact of feature detection differences between samples.
For average, there is a qualitative difference between mean/median and sum in the effect that missing peptide abundances have (only if include_all is set or top is 0): mean and median ignore missing cases, averaging only present values. If low-abundant peptides are not detected in some samples, the computed protein abundances for those samples may thus be too optimistic. sum implicitly treats missing values as zero, so this problem does not occur and comparability across samples is ensured. However, with sum the total number of peptides ("summands") available for a protein may affect the abundances computed for it (depending on top), so results within a sample may become unproportional.


OpenMS / TOPP release 1.10.0 Documentation generated on Thu Mar 7 2013 09:42:47 using doxygen 1.7.1