Skip to main content

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

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

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.39.tar.gz (11.6 MB view details)

Uploaded Source

Built Distribution

psims-0.1.39-py2.py3-none-any.whl (11.6 MB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

  • Download URL: psims-0.1.39.tar.gz
  • Upload date:
  • Size: 11.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for psims-0.1.39.tar.gz
Algorithm Hash digest
SHA256 210011e18772cd4e14c9ae01cf6a730d1fe643ed9806008e7f85014ba821270d
MD5 ca455fb87fd5de46f894b677bb03c11f
BLAKE2b-256 2a8df60e6c32c6f9b3b6cab7a6a7705f2b29a7861ec3f7bc9f489fb4d9f804e3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: psims-0.1.39-py2.py3-none-any.whl
  • Upload date:
  • Size: 11.6 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for psims-0.1.39-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8c5672558a7b8268edf5c045a4a92f519e7af0b2a69c2749e91f808866d7c5f8
MD5 f2f33e643d7f16a269ee14d4d98c12a1
BLAKE2b-256 54cf17a429170adaa98a12543952abbfea30d1bf549d0435554e76bb8e1b4e9a

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