Skip to main content

Common utilities for parsing and handling peptide-spectrum matches and search engine results.

Project description

Common utilities for parsing and handling peptide-spectrum matches and search engine results in Python.

GitHub release PyPI Bioconda GitHub Actions tests status GitHub Actions build status Codecov GitHub Follow @compomics.com

About

Introduction

psm_utils is a Python package with utilities for parsing and handling peptide-spectrum matches (PSMs) and proteomics search engine results. It is mainly developed to be used in Python packages developed at CompOmics, such as MS²PIP, DeepLC, and MS²Rescore, but can be useful to anyone dealing with PSMs and PSM files. Moreover, it provides an easy-to-use CLI and web server to convert search engine results from one PSM file format into another.

Goals and non-goals

  • To provide an easy-to-use Python API for handling PSMs.

  • To provide a unified Python API to the plethora of proteomics search engine output formats that are in existence.

  • To follow community standards: psm_utils pragmatically adheres to the standards developed by the HUPO Proteomics Standards Initiative, such as ProForma 2.0 , the Universal Spectrum Identifier, and mzIdentML

  • To be open and dynamic: psm_utils is fully open source, under the permissive Apache 2.0 license. New reader and writer modules can easily be added, and we welcome everyone to contribute to the project. See Contributing for more information.

  • NOT to reinvent the wheel: Instead, psm_utils heavily makes use of packages such as pyteomics and psims that have existing functionality for reading and/or writing PSM files. psm_utils.io provides a unified, higher level Python API build on top of these packages.

Supported file formats

File format

psm_utils tag

Read support

Write support

Comments

AlphaDIA precursors TSV

alphadia

CBOR

cbor

Requires the optional cbor2 dependency (pip install psm-utils[cbor])

DIA-NN TSV

diann

FlashLFQ generic TSV

flashlfq

FragPipe PSM TSV

fragpipe

ionbot CSV

ionbot

JSON

json

OpenMS idXML

idxml

Requires the optional openms dependency (pip install psm-utils[idxml])

MaxQuant msms.txt

msms

MS Amanda CSV

msamanda

mzIdentML

mzid

Parquet

parquet

Peptide Record

peprec

pepXML

pepxml

Percolator tab

percolator

Proteome Discoverer MSF

proteome_discoverer

Sage Parquet

sage_parquet

Sage TSV

sage_tsv

ProteoScape Parquet

proteoscape

TSV

tsv

X!Tandem XML

xtandem

Legend: ✅ Supported, ❌ Unsupported

psm_utils online

Open in streamlit

psm_utils online is a Streamlit-based web server built on top of the psm_utils Python package. It allows you to easily retrieve proteomics PSM statistics for any supported PSM file type, and to convert search engine results from one PSM file format into another. Click the badge above to get started!

Installation

Install with pip
pip install psm-utils
Install with Bioconda
conda install -c bioconda psm-utils

Full documentation

The full documentation, including a quickstart guide and Python API reference is available on psm_utils.readthedocs.io.

Citation

If you use psm_utils for your research, please cite the following publication:

psm_utils: A high-level Python API for parsing and handling peptide-spectrum-matches and proteomics search results.
Ralf Gabriels, Arthur Declercq, Robbin Bouwmeester, Sven Degroeve, Lennart Martens.
Journal of Proteome Research (2022). doi:10.1021/acs.jproteome.2c00609

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

psm_utils-1.5.1.tar.gz (80.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

psm_utils-1.5.1-py3-none-any.whl (94.9 kB view details)

Uploaded Python 3

File details

Details for the file psm_utils-1.5.1.tar.gz.

File metadata

  • Download URL: psm_utils-1.5.1.tar.gz
  • Upload date:
  • Size: 80.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for psm_utils-1.5.1.tar.gz
Algorithm Hash digest
SHA256 9044403112c035d0d130f8ce1bb285eb877f2bbb10734568663ab7f3ba5c6fa5
MD5 d5a46ee52187fa085e7441f0d89237a9
BLAKE2b-256 1f2545569f23641e35f4c93ed6379a6cfede2875b3bdcadd8ef78f4686bed7f1

See more details on using hashes here.

File details

Details for the file psm_utils-1.5.1-py3-none-any.whl.

File metadata

  • Download URL: psm_utils-1.5.1-py3-none-any.whl
  • Upload date:
  • Size: 94.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for psm_utils-1.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 20daf92d67500aa52044cf4ea5d115ed192da3de73d7ef14344b18b0faa442a5
MD5 07bb59b3e6dd58527d172fe4c431f2a7
BLAKE2b-256 c07d99922e224e841eab2f1ed1883566b7b786f7a65e0c02998406ef6de6d42b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page