Genome-level presence inference from metaproteomic peptide lists.
Project description
MetaUmbra
Genome-level presence inference from metaproteomic peptides
MetaUmbra performs genome-level presence inference from metaproteomic peptide lists. It combines sample-depth-aware genome-unique peptide support with weighted shared peptide evidence to identify statistically supported microbial genomes and generate interpretable presence rankings.
Main features
- Evaluate candidate genome support from metaproteomic peptide tables
- Build genome-specific theoretical peptide references from protein FASTA files
- Support user-defined genome collections, including isolate genomes, strain panels, and MAG catalogs
- Use both unique and shared peptide evidence for genome presence inference
- Calibrate genome-unique peptide counts against sample-specific weak-background genomes by default
- Score multi-sample inputs per sample or user-defined analysis unit without repeated genome digest scans
- Report genome-level p-values, BH-adjusted q-values, and presence scores
- Provide GUI, command-line, and Python workflow support
- Support peptide tables from common metaproteomics workflows such as DIA-NN and MaxQuant
Workflow overview
Installation
MetaUmbra requires Python 3.10 or newer. Installation is available via pip from PyPI.
# Install with all features (GUI, parquet support)
pip install metaumbra[all]
The default GUI extra uses PySide6. To run the GUI with PyQt5 instead, install metaumbra[gui-pyqt5].
or
# Install with core features only
pip install metaumbra
Usage
MetaUmbra can be used through either the graphical interface or the command line.
For a detailed walkthrough, including input formats, CLI examples, output interpretation, and troubleshooting, see the MetaUmbra Usage Guide.
Graphical interface
metaumbra-gui
The GUI supports FASTA digestion, peptide table loading, genome presence scoring, and result export.
Command line
MetaUmbra provides separate commands for the main workflow steps:
metaumbra digest --help
metaumbra score --help
metaumbra extract-parquet --help
A typical workflow is:
metaumbra digest ...
metaumbra score ...
Use metaumbra extract-parquet ... to convert DIA-NN parquet reports to peptide TSV files before scoring.
Input
MetaUmbra requires:
- Protein FASTA files, with one FASTA file per genome
- An observed peptide table containing peptide sequences
Optional inputs include peptide scores, peptide-level error values, decoy flags, and genome lineage annotations.
For multi-sample long tables such as DIA-NN reports, metaumbra score --unit-aware can call peptide presence per raw sample using Precursor.Quantity, aggregate samples into analysis_unit_id groups from an optional metadata table, and export pooled, per-unit, cohort recurrence, significant-call, genome-union, and genome-by-unit matrix outputs.
Output
The main output is a TSV table containing genome-level evidence and significance values. When unit-aware scoring is enabled, the requested output path contains the main unit-level genome presence result.
Unit-aware output files:
<stem>_unit_genome_presence.tsv: one row peranalysis_unit_idxgenome_id, including unit-specificqvalueandpass_qflags.<stem>_cohort_genome_summary.tsv: one row per genome, summarizing recurrence across units.<stem>_sample_unit_mapping.tsv: final sample-to-analysis-unit mapping used for the run.
Each scoring run creates <stem>_artifacts/ at startup and records run_parameters.json plus run.log for reproducibility and debugging. The parameter snapshot includes CPU model, logical CPU count, total memory, and platform/architecture metadata. The pooled peptide-set result is supplementary in unit-aware mode and is written under <stem>_artifacts/pooled_genome_presence.tsv when diagnostic artifact export is enabled. Optional derived unit-aware tables can be enabled with --export-unit-derived-tables; they are written under <stem>_artifacts/unit_aware/ and include call counts, significant per-unit genome lists, deduplicated genome unions, binary genome x unit matrices, and a q-value matrix.
In the current implementation, peptide presence within an analysis unit is defined as the union of sample-level peptide presence across samples assigned to that unit. Unit-level p-values combine per-unit shared knockoff evidence (pvalue_shared) with the selected per-unit unique-evidence model (pvalue_unique) using Fisher's method, then apply BH correction separately within each analysis unit.
Key output columns include:
| Column | Description |
|---|---|
genome_id |
Candidate genome identifier |
num_peptides_matched |
Number of observed peptides matched to the genome |
num_peptides_unique |
Number of matched peptides unique to the genome |
theoretical_unique_peptides |
Theoretical peptides unique to this genome among the analyzed genome set, included for hypergeometric-opportunity output |
expected_unique_null |
Expected observed genome-unique peptides under the selected unique-evidence null |
unique_depth_fold |
Observed unique peptides divided by expected unique peptides under the null |
has_unique_evidence |
Whether the genome has at least one observed unique peptide |
pvalue_shared |
Shared-peptide knockoff p-value |
pvalue_unique |
Unique-evidence p-value |
pvalue |
Genome-level p-value |
qvalue |
BH-adjusted genome-level q-value |
presence_score |
Ranking score based on q-value |
Citation
If you use MetaUmbra, please cite:
Wu Q, Ning Z, Zhang A, Cheng K, Figeys D. MetaUmbra: Statistically Controlled Genome-Level Presence Inference from Metaproteomic Peptides.[J]. bioRxiv, 2026.04.29.721689.
A formal citation will be added after publication.
Contact
For questions or issues, please use the GitHub issue tracker or contact the corresponding author listed in the associated manuscript.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file metaumbra-1.3.3.tar.gz.
File metadata
- Download URL: metaumbra-1.3.3.tar.gz
- Upload date:
- Size: 3.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fae76df63a15abb207cb2b9a7ffe78b345c2a63643aa4a9d1ec69b35736b15d0
|
|
| MD5 |
89af676f106cdcf9f24452d34dd5e6ed
|
|
| BLAKE2b-256 |
e4809424c1b0cd8b73ece2f48e86d86aa5b5683e27c5ada508acc4171139791e
|
File details
Details for the file metaumbra-1.3.3-py3-none-any.whl.
File metadata
- Download URL: metaumbra-1.3.3-py3-none-any.whl
- Upload date:
- Size: 3.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d553ff9d29a79541238518315010ff38c9e1509b22a5a06371b64331af91d0a4
|
|
| MD5 |
f622b05dbc102ae5356e9f5edb166998
|
|
| BLAKE2b-256 |
c5caac1404df013dcd8ff1a107acce34d30001262baf5095d16272ab9d04bae9
|