Skip to main content

Writers and controlled vocabulary manager for PSI-MS's mzML and mzIdentML standards

Reason this release was yanked:

Python versions don't match

Project description

psims

Prototype work for a unified API for writing Proteomics Standards Initiative standardized formats for mass spectrometry:

  1. mzML
  2. mzIdentML
  3. mzMLb

See the Documenation for more information

Installation

With pip:

pip install psims

With conda:

conda install -c bioconda -c conda-forge -c defaults psims

mzML Minimal Example

from psims.mzml.writer import MzMLWriter

# Load the data to write
scans = get_scan_data()

with MzMLWriter(open("out.mzML", 'wb'), close=True) as out:
    # Add default controlled vocabularies
    out.controlled_vocabularies()
    # Open the run and spectrum list sections
    with out.run(id="my_analysis"):
        spectrum_count = len(scans) + sum([len(products) for _, products in scans])
        with out.spectrum_list(count=spectrum_count):
            for scan, products in scans:
                # Write Precursor scan
                out.write_spectrum(
                    scan.mz_array, scan.intensity_array,
                    id=scan.id, params=[
                        "MS1 Spectrum",
                        {"ms level": 1},
                        {"total ion current": sum(scan.intensity_array)}
                     ])
                # Write MSn scans
                for prod in products:
                    out.write_spectrum(
                        prod.mz_array, prod.intensity_array,
                        id=prod.id, params=[
                            "MSn Spectrum",
                            {"ms level": 2},
                            {"total ion current": sum(prod.intensity_array)}
                         ],
                         # Include precursor information
                         precursor_information={
                            "mz": prod.precursor_mz,
                            "intensity": prod.precursor_intensity,
                            "charge": prod.precursor_charge,
                            "scan_id": prod.precursor_scan_id,
                            "activation": ["beam-type collisional dissociation", {"collision energy": 25}],
                            "isolation_window": [prod.precursor_mz - 1, prod.precursor_mz, prod.precursor_mz + 1]
                         })

Citing

If you use psims in an academic project, please cite:

Klein, J. A., & Zaia, J. (2018). psims - A declarative writer for mzML and mzIdentML for Python. Molecular & Cellular Proteomics, mcp.RP118.001070. https://doi.org/10.1074/mcp.RP118.001070

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

psims-0.1.47.tar.gz (11.7 MB view details)

Uploaded Source

Built Distribution

psims-0.1.47-py2.py3-none-any.whl (11.7 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file psims-0.1.47.tar.gz.

File metadata

  • Download URL: psims-0.1.47.tar.gz
  • Upload date:
  • Size: 11.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for psims-0.1.47.tar.gz
Algorithm Hash digest
SHA256 0e5ef74a0cc554058aeb318ca00d5c625f07fc03f2fc860d897ceec12ce3b483
MD5 1e97323750e9773aac8caf99e5801ffc
BLAKE2b-256 571d45273bd10b4699e4057d389a1057aaf056e6f44801643eb05bfea5208167

See more details on using hashes here.

File details

Details for the file psims-0.1.47-py2.py3-none-any.whl.

File metadata

  • Download URL: psims-0.1.47-py2.py3-none-any.whl
  • Upload date:
  • Size: 11.7 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for psims-0.1.47-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9fb597f0cc8a2988f75b516f0cb36e872cfd2e270868be4e347016f9f6072448
MD5 2fa729e36c4446765472fe5c3699d562
BLAKE2b-256 f974a0f8d23324ef7276c2cbfc2381ac4245eb8ba5b053f0de4c7282902b7045

See more details on using hashes here.

Supported by

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