psm-utils


Namepsm-utils JSON
Version 0.8.2 PyPI version JSON
download
home_pageNone
SummaryCommon utilities for parsing and handling peptide-spectrum matches and search engine results.
upload_time2024-04-05 12:08:03
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseNone
keywords proteomics peptide spectrum identification parsing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            #########
psm_utils
#########

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


.. image:: https://img.shields.io/github/v/release/compomics/psm_utils?sort=semver&style=flat-square
   :alt: GitHub release
   :target: https://github.com/compomics/psm_utils/releases

.. image:: https://img.shields.io/pypi/v/psm-utils?style=flat-square
   :alt: PyPI
   :target: https://pypi.org/project/psm-utils/

.. image:: https://img.shields.io/conda/vn/bioconda/psm-utils?style=flat-square
   :alt: Bioconda
   :target: http://bioconda.github.io/recipes/psm-utils/README.html

.. image:: https://img.shields.io/github/actions/workflow/status/compomics/psm_utils/test.yml?branch=main&label=test&style=flat-square
   :alt: GitHub Actions tests status
   :target: https://github.com/compomics/psm_utils/actions/workflows/test.yml

.. image:: https://img.shields.io/github/actions/workflow/status/compomics/psm_utils/publish.yml?event=release&style=flat-square
   :alt: GitHub Actions build status
   :target: https://github.com/compomics/psm_utils/actions/workflows/publish.yml

.. image:: https://img.shields.io/codecov/c/github/compomics/psm_utils?style=flat-square
   :alt: Codecov
   :target: https://app.codecov.io/gh/compomics/psm_utils

.. image:: https://img.shields.io/github/license/compomics/psm_utils.svg?style=flat-square
   :alt: GitHub
   :target: https://www.apache.org/licenses/LICENSE-2.0

.. image:: https://img.shields.io/twitter/follow/CompOmics?style=flat-square
   :alt: Twitter
   :target: https://twitter.com/compomics



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 <https://www.compomics.com>`_, such as
`MS²PIP <https://github.com/compomics/ms2pip_c>`_,
`DeepLC <https://github.com/compomics/deeplc>`_, and
`MS²Rescore <https://github.com/compomics/ms2rescore>`_,
but can be useful to anyone dealing with PSMs and PSM files. Moreover, it
provides an easy-to-use CLI and
`web server <https://psm-utils.streamlitapp.com/>`_ 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 <http://psidev.info>`_, such as
  `ProForma 2.0 <https://psidev.info/proforma>`_ , the
  `Universal Spectrum Identifier <https://psidev.info/usi>`_, and
  `mzIdentML <https://psidev.info/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 <https://psm-utils.readthedocs.io/en/latest/contributing>`_
  for more information.
- **NOT to reinvent the wheel**: Instead, psm_utils heavily makes
  use of packages such as `pyteomics <http://pyteomics.readthedocs.io/>`_ and
  `psims <https://github.com/mobiusklein/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
===================================================================================================================== ======================== =============== ===============
 `ionbot CSV <https://ionbot.cloud/>`_                                                                                 ``ionbot``               ✅              ❌
 `OpenMS idXML <https://www.openms.de/>`_                                                                              ``idxml``                ✅              ✅
 `MaxQuant msms.txt <https://www.maxquant.org/>`_                                                                      ``msms``                 ✅              ❌
 `MS Amanda CSV <https://ms.imp.ac.at/?goto=msamanda>`_                                                                ``msamanda``             ✅              ❌
 `mzIdentML <https://psidev.info/mzidentml>`_                                                                          ``mzid``                 ✅              ✅
 `Peptide Record <https://psm-utils.readthedocs.io/en/stable/api/psm_utils.io/#module-psm_utils.io.peptide_record>`_   ``peprec``               ✅              ✅
 `pepXML <http://tools.proteomecenter.org/wiki/index.php?title=Formats:pepXML>`_                                       ``pepxml``               ✅              ❌
 `Percolator tab <https://github.com/percolator/percolator/wiki/Interface>`_                                           ``percolator``           ✅              ✅
 Proteome Discoverer MSF                                                                                               ``proteome_discoverer``  ✅              ❌
 `Sage <https://github.com/lazear/sage/blob/v0.12.0/DOCS.md#interpreting-sage-output>`_                                ``sage``                 ✅              ❌
 ProteoScape Parquet                                                                                                   ``proteoscape``          ✅              ❌
 `TSV <https://psm-utils.readthedocs.io/en/stable/api/psm_utils.io/#module-psm_utils.io.tsv>`_                         ``tsv``                  ✅              ✅
 `X!Tandem XML <https://www.thegpm.org/tandem/>`_                                                                      ``xtandem``              ✅              ❌
===================================================================================================================== ======================== =============== ===============

Legend: ✅ Supported, ❌ Unsupported



psm_utils online
################

.. image:: https://static.streamlit.io/badges/streamlit_badge_black_white.svg
   :alt: Open in streamlit
   :target: https://psm-utils.streamlitapp.com/

`psm_utils online <https://psm-utils.streamlitapp.com/>`_
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
############

.. image:: https://img.shields.io/badge/install%20with-pip-brightgreen?style=flat-square
   :alt: Install with pip
   :target: https://pypi.org/project/psm-utils/

.. code-block:: sh

    pip install psm-utils


.. image:: https://img.shields.io/badge/install%20with-bioconda-blue?style=flat-square
   :alt: Install with Bioconda
   :target: http://bioconda.github.io/recipes/psm-utils/README.html

.. code-block:: sh

    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 <https://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 <https://doi.org/10.1021/acs.jproteome.2c00609>`_


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "psm-utils",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "proteomics, peptide, spectrum, identification, parsing",
    "author": null,
    "author_email": "Ralf Gabriels <ralf@gabriels.dev>, Robbin Bouwmeester <robbin.bouwmeester@ugent.be>, Arthur Declercq <arthur.declercq@ugent.be>",
    "download_url": "https://files.pythonhosted.org/packages/53/8b/42846f7ffa69eddf736ff3ad723e2122e0f792e7e06732133ae70c7691c6/psm_utils-0.8.2.tar.gz",
    "platform": null,
    "description": "#########\npsm_utils\n#########\n\nCommon utilities for parsing and handling peptide-spectrum matches and search\nengine results in Python.\n\n\n.. image:: https://img.shields.io/github/v/release/compomics/psm_utils?sort=semver&style=flat-square\n   :alt: GitHub release\n   :target: https://github.com/compomics/psm_utils/releases\n\n.. image:: https://img.shields.io/pypi/v/psm-utils?style=flat-square\n   :alt: PyPI\n   :target: https://pypi.org/project/psm-utils/\n\n.. image:: https://img.shields.io/conda/vn/bioconda/psm-utils?style=flat-square\n   :alt: Bioconda\n   :target: http://bioconda.github.io/recipes/psm-utils/README.html\n\n.. image:: https://img.shields.io/github/actions/workflow/status/compomics/psm_utils/test.yml?branch=main&label=test&style=flat-square\n   :alt: GitHub Actions tests status\n   :target: https://github.com/compomics/psm_utils/actions/workflows/test.yml\n\n.. image:: https://img.shields.io/github/actions/workflow/status/compomics/psm_utils/publish.yml?event=release&style=flat-square\n   :alt: GitHub Actions build status\n   :target: https://github.com/compomics/psm_utils/actions/workflows/publish.yml\n\n.. image:: https://img.shields.io/codecov/c/github/compomics/psm_utils?style=flat-square\n   :alt: Codecov\n   :target: https://app.codecov.io/gh/compomics/psm_utils\n\n.. image:: https://img.shields.io/github/license/compomics/psm_utils.svg?style=flat-square\n   :alt: GitHub\n   :target: https://www.apache.org/licenses/LICENSE-2.0\n\n.. image:: https://img.shields.io/twitter/follow/CompOmics?style=flat-square\n   :alt: Twitter\n   :target: https://twitter.com/compomics\n\n\n\nAbout\n#####\n\nIntroduction\n************\n\npsm_utils is a Python package with utilities for parsing and\nhandling peptide-spectrum matches (PSMs) and proteomics search engine results.\nIt is mainly developed to be used in Python packages developed at\n`CompOmics <https://www.compomics.com>`_, such as\n`MS\u00b2PIP <https://github.com/compomics/ms2pip_c>`_,\n`DeepLC <https://github.com/compomics/deeplc>`_, and\n`MS\u00b2Rescore <https://github.com/compomics/ms2rescore>`_,\nbut can be useful to anyone dealing with PSMs and PSM files. Moreover, it\nprovides an easy-to-use CLI and\n`web server <https://psm-utils.streamlitapp.com/>`_ to\nconvert search engine results from\none PSM file format into another.\n\n\nGoals and non-goals\n*******************\n- To provide an easy-to-use Python API for **handling PSMs**.\n- To provide a unified Python API to the plethora of **proteomics search engine\n  output formats** that are in existence.\n- To follow **community standards**: psm_utils pragmatically adheres to the\n  standards developed by the\n  `HUPO Proteomics Standards Initiative <http://psidev.info>`_, such as\n  `ProForma 2.0 <https://psidev.info/proforma>`_ , the\n  `Universal Spectrum Identifier <https://psidev.info/usi>`_, and\n  `mzIdentML <https://psidev.info/mzidentml>`_\n- To be **open and dynamic**: psm_utils is fully open source, under the\n  permissive Apache 2.0 license. New reader and writer modules can easily be\n  added, and we welcome everyone to contribute to the project. See\n  `Contributing <https://psm-utils.readthedocs.io/en/latest/contributing>`_\n  for more information.\n- **NOT to reinvent the wheel**: Instead, psm_utils heavily makes\n  use of packages such as `pyteomics <http://pyteomics.readthedocs.io/>`_ and\n  `psims <https://github.com/mobiusklein/psims>`_ that have existing\n  functionality for reading and/or writing PSM files. ``psm_utils.io``\n  provides a unified, higher level Python API build on top of these packages.\n\n\nSupported file formats\n**********************\n\n===================================================================================================================== ======================== =============== ===============\n File format                                                                                                           psm_utils tag            Read support    Write support\n===================================================================================================================== ======================== =============== ===============\n `ionbot CSV <https://ionbot.cloud/>`_                                                                                 ``ionbot``               \u2705              \u274c\n `OpenMS idXML <https://www.openms.de/>`_                                                                              ``idxml``                \u2705              \u2705\n `MaxQuant msms.txt <https://www.maxquant.org/>`_                                                                      ``msms``                 \u2705              \u274c\n `MS Amanda CSV <https://ms.imp.ac.at/?goto=msamanda>`_                                                                ``msamanda``             \u2705              \u274c\n `mzIdentML <https://psidev.info/mzidentml>`_                                                                          ``mzid``                 \u2705              \u2705\n `Peptide Record <https://psm-utils.readthedocs.io/en/stable/api/psm_utils.io/#module-psm_utils.io.peptide_record>`_   ``peprec``               \u2705              \u2705\n `pepXML <http://tools.proteomecenter.org/wiki/index.php?title=Formats:pepXML>`_                                       ``pepxml``               \u2705              \u274c\n `Percolator tab <https://github.com/percolator/percolator/wiki/Interface>`_                                           ``percolator``           \u2705              \u2705\n Proteome Discoverer MSF                                                                                               ``proteome_discoverer``  \u2705              \u274c\n `Sage <https://github.com/lazear/sage/blob/v0.12.0/DOCS.md#interpreting-sage-output>`_                                ``sage``                 \u2705              \u274c\n ProteoScape Parquet                                                                                                   ``proteoscape``          \u2705              \u274c\n `TSV <https://psm-utils.readthedocs.io/en/stable/api/psm_utils.io/#module-psm_utils.io.tsv>`_                         ``tsv``                  \u2705              \u2705\n `X!Tandem XML <https://www.thegpm.org/tandem/>`_                                                                      ``xtandem``              \u2705              \u274c\n===================================================================================================================== ======================== =============== ===============\n\nLegend: \u2705 Supported, \u274c Unsupported\n\n\n\npsm_utils online\n################\n\n.. image:: https://static.streamlit.io/badges/streamlit_badge_black_white.svg\n   :alt: Open in streamlit\n   :target: https://psm-utils.streamlitapp.com/\n\n`psm_utils online <https://psm-utils.streamlitapp.com/>`_\nis a Streamlit-based web server built on top of the psm_utils Python package. It allows\nyou to easily retrieve proteomics PSM statistics for any supported PSM file type, and to\nconvert search engine results from one PSM file format into  another. Click the badge\nabove to get started!\n\n\n\nInstallation\n############\n\n.. image:: https://img.shields.io/badge/install%20with-pip-brightgreen?style=flat-square\n   :alt: Install with pip\n   :target: https://pypi.org/project/psm-utils/\n\n.. code-block:: sh\n\n    pip install psm-utils\n\n\n.. image:: https://img.shields.io/badge/install%20with-bioconda-blue?style=flat-square\n   :alt: Install with Bioconda\n   :target: http://bioconda.github.io/recipes/psm-utils/README.html\n\n.. code-block:: sh\n\n    conda install -c bioconda psm-utils\n\n\n\nFull documentation\n##################\n\nThe full documentation, including a quickstart guide and Python API reference\nis available on `psm_utils.readthedocs.io <https://psm-utils.readthedocs.io>`_.\n\n\nCitation\n########\n\nIf you use psm_utils for your research, please cite the following publication:\n\n   | **psm_utils: A high-level Python API for parsing and handling peptide-spectrum-matches and proteomics search results.**\n   | Ralf Gabriels, Arthur Declercq, Robbin Bouwmeester, Sven Degroeve, Lennart Martens.\n   | Journal of Proteome Research (2022). `doi:10.1021/acs.jproteome.2c00609 <https://doi.org/10.1021/acs.jproteome.2c00609>`_\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Common utilities for parsing and handling peptide-spectrum matches and search engine results.",
    "version": "0.8.2",
    "project_urls": {
        "CompOmics": "https://www.compomics.com",
        "GitHub": "https://github.com/compomics/psm_utils",
        "PyPi": "https://pypi.org/project/psm-utils/",
        "ReadTheDocs": "https://psm-utils.readthedocs.io"
    },
    "split_keywords": [
        "proteomics",
        " peptide",
        " spectrum",
        " identification",
        " parsing"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6f7b658ec6820f665f67661533d2c26101012ae1ebecfbc44ad7b6def41dbe26",
                "md5": "aca7f65a96e60e8e76ee23108de99a19",
                "sha256": "e22f7d4e566b3d4ce060924407795da21694aa8f1cb43eb8fd1bf0a636f7cf7d"
            },
            "downloads": -1,
            "filename": "psm_utils-0.8.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "aca7f65a96e60e8e76ee23108de99a19",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 69260,
            "upload_time": "2024-04-05T12:08:00",
            "upload_time_iso_8601": "2024-04-05T12:08:00.055660Z",
            "url": "https://files.pythonhosted.org/packages/6f/7b/658ec6820f665f67661533d2c26101012ae1ebecfbc44ad7b6def41dbe26/psm_utils-0.8.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "538b42846f7ffa69eddf736ff3ad723e2122e0f792e7e06732133ae70c7691c6",
                "md5": "ea2fd343222ee192bbe67587bbf3bc25",
                "sha256": "b225f70caacccd6cec3838083fd6c3ff77052c4589e455bd789d900ec2f80baa"
            },
            "downloads": -1,
            "filename": "psm_utils-0.8.2.tar.gz",
            "has_sig": false,
            "md5_digest": "ea2fd343222ee192bbe67587bbf3bc25",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 68882429,
            "upload_time": "2024-04-05T12:08:03",
            "upload_time_iso_8601": "2024-04-05T12:08:03.629454Z",
            "url": "https://files.pythonhosted.org/packages/53/8b/42846f7ffa69eddf736ff3ad723e2122e0f792e7e06732133ae70c7691c6/psm_utils-0.8.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-05 12:08:03",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "compomics",
    "github_project": "psm_utils",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "psm-utils"
}
        
Elapsed time: 0.34232s