![]() |
OpenMS
|
PercolatorAdapter facilitates the input to, the call of and output integration of Percolator. Percolator (http://percolator.ms/) is a tool to apply semi-supervised learning for peptide identification from shotgun proteomics datasets.
| pot. predecessor tools | → PercolatorAdapter → | pot. successor tools |
|---|---|---|
| PSMFeatureExtractor | IDFilter |
Percolator is search engine sensitive, i.e. it's input features vary, depending on the search engine. Must be prepared beforehand. If you do not want to use the specific features, use the generic_feature_set flag. Will incorporate the score attribute of a PSM, so be sure, the score you want is set as main score with IDScoreSwitcher . Be aware, that you might very well experience a performance loss compared to the search engine specific features. You can also perform protein inference with percolator when you activate the protein fdr parameter. Additionally you need to set the enzyme setting. We only read the q-value for protein groups since Percolator has a more elaborate FDR estimation. For proteins we add q-value as main score and PEP as metavalue. For PSMs you can choose the main score. Peptide level FDRs cannot be parsed and used yet.
In-process backend and percolator executable
By default, PercolatorAdapter runs Percolator in-process: OpenMS contains the Percolator algorithm, so the percolator executable does not have to be installed. The in-process backend rescores idXML, mzIdentML and idparquet input and computes PSM-level FDRs. PercolatorAdapter runs the percolator executable (-percolator_executable) instead, which then has to be installed, if one of these options is set:
-use_subprocess true -in_osw (OpenSWATH input)-peptide_level_fdrs or -protein_level_fdrs -doc (other than 0)-init_weights -out_pout_target, -out_pout_decoy, -out_pout_target_proteins, -out_pout_decoy_proteins, -weights, -quick_validation, -static, -test_each_iteration or -override Both backends write the pin file of -out_pin. -verbose sets the verbosity of the executable only.
The in-process backend needs enough decoys to train its model, roughly 100 or more. If the training fails, PercolatorAdapter stops with an error.
Multithreading: The in-process backend uses the number of threads set with -threads, at most 3 (one per cross-validation fold); -threads 0 gives 3. For the percolator executable, a minimum of 3 threads is used (its default) even if -threads is set to e.g. 1, for backwards compatibility reasons. You can still force the usage of less than 3 threads by setting the -force flag.
The command line parameters of this tool are:
PercolatorAdapter -- Facilitate input to Percolator and reintegrate.
Full documentation: http://www.openms.de/doxygen/nightly/html/TOPP_PercolatorAdapter.html
Version: 3.6.0-pre-nightly-2026-09-29 Sep 30 2026, 01:45:35, Revision: 55f7bdb
To cite OpenMS:
+ Pfeuffer, J., Bielow, C., Wein, S. et al.. OpenMS 3 enables reproducible analysis of large-scale mass spec
trometry data. Nat Methods (2024). doi:10.1038/s41592-024-02197-7.
Usage:
PercolatorAdapter <options>
Options (mandatory options marked with '*'):
-in <files> Input file(s) (valid formats: 'mzid', 'idXML', 'idparquet')
-in_decoy <files> Input decoy file(s) in case of separate searches (valid formats: 'mzid
', 'idXML', 'idparquet')
-in_osw <file> Input file in OSW format (valid formats: 'OSW')
-out <file>* Output file (valid formats: 'idXML', 'mzid', 'osw', 'idparquet')
-out_type <type> Output file type -- default: determined from file extension or content
. (valid: 'mzid', 'idXML', 'osw', 'idparquet')
-enzyme <enzyme> Type of enzyme: no_enzyme,elastase,pepsin,proteinasek,thermolysin,chym
otrypsin,lys-n,lys-c,arg-c,asp-n,glu-c,trypsin,trypsinp (default: 'try
psin') (valid: 'no_enzyme', 'elastase', 'pepsin', 'proteinasek', 'ther
molysin', 'chymotrypsin', 'lys-n', 'lys-c', 'arg-c', 'asp-n', 'glu-c',
'trypsin', 'trypsinp')
-use_subprocess <choice> Run the external 'percolator' binary instead of the in-process OpenMS:
:Percolator library. The in-process backend covers idXML/mzid/idparque
t input with PSM-level FDRs; OSW input, protein- or peptide-level FDRs
, -doc, -init_weights and the options only the binary implements (-out
_pout_*, -weights, -quick_validation, -static, -test_each_iteration,
-override) run the binary automatically. (default: 'false') (valid:
'true', 'false')
-percolator_executable <executable> The Percolator executable. Required only when it is run: with -use_sub
process true, OSW input, protein- or peptide-level FDRs, -doc, -init_w
eights or an option only the executable implements (see -use_subproces
s). The in-process backend doesn't need it.
-peptide_level_fdrs Calculate peptide-level FDRs instead of PSM-level FDRs.
-protein_level_fdrs Use the picked protein-level FDR to infer protein probabilities. Use
the -fasta option and -decoy_pattern to set the Fasta file and decoy
pattern.
-osw_level <osw_level> OSW: the data level selected for scoring. (default: 'ms2') (valid:
'ms1', 'ms2', 'transition')
-score_type <type> Type of the peptide main score (default: 'q-value') (valid: 'q-value',
'pep', 'svm')
Post-filter parameters applied to Percolator output:
-score:fdr <value> FDR cutoff applied to the Percolator q-value before writing output.
PSMs with q-value > cutoff are dropped. 1.0 disables the filter. (defa
ult: '1.0') (min: '0.0' max: '1.0')
-best_per_spectrum_only After applying score:fdr, retain only the best-scoring PSM per spectru
m (default: keep all hits, matching legacy PercolatorAdapter behaviour
).
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 (0 =
all available cores) (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:
This section lists all parameters supported by the tool. Parameters are organized into hierarchical subsections that group related settings together. Subsections may contain further subsections or individual parameters.
Each parameter entry contains the following information:
Parameter tags provide additional information about how a parameter is used. Some tags indicate whether a parameter is required or intended for advanced configuration, while others may be used internally by OpenMS or workflow tools.
Parameters highlighted as required must be specified for the tool to run successfully. Parameters marked as advanced allow fine-tuning of algorithm behavior and are typically not needed for standard workflows.
Percolator is written by Lukas Käll (http://per-colator.com/ Copyright Lukas Käll lukas.nosp@m..kal.nosp@m.l@sci.nosp@m.life.nosp@m.lab.s.nosp@m.e)