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

Uploaded Source

Built Distribution

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

Uploaded Python 2 Python 3

File details

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

File metadata

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

File hashes

Hashes for psims-0.1.37.tar.gz
Algorithm Hash digest
SHA256 c48bb8278c6ba0105b12cdc9915f226107475aeb6dcde295374cc477d1af0da9
MD5 b4987b7babd50bf60e39fd3391c5c76f
BLAKE2b-256 aa7879048d4e5e762fe9f4f837cb30e5b5e032437ebc9c2a9df6898661a1d0d0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: psims-0.1.37-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.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for psims-0.1.37-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9088ebbb008b34ec48ea347e482bdcc450ea2ec91985acd1e34c19cd4d79b4cd
MD5 935da3e78aae89a5d4b538e5af8c4b5b
BLAKE2b-256 135a56419d0aed6a76000a6b19775a7bf154cab683d7fcc089c52512d55c1575

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