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
Release history Release notifications | RSS feed
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.40.tar.gz
(11.7 MB
view details)
Built Distribution
File details
Details for the file psims-0.1.40.tar.gz
.
File metadata
- Download URL: psims-0.1.40.tar.gz
- Upload date:
- Size: 11.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71e3780e0c4c9166adfa96a69bbcd9d5515eb7d088c80dbbd7b05b6a1273291a |
|
MD5 | 84206e1d70028b473d71a3be403e3be1 |
|
BLAKE2b-256 | 9bbde26f69631b4ec95c9d30a108914ecc36b9a2756c5d83d8874b202ed97d0c |
File details
Details for the file psims-0.1.40-py2.py3-none-any.whl
.
File metadata
- Download URL: psims-0.1.40-py2.py3-none-any.whl
- Upload date:
- Size: 11.7 MB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 282e84c05d6f3513a0f419adf0c3842fac2688b4ed1293c7b4533e36c8e92e1c |
|
MD5 | 2ee4374b79e39b93f4eaeab98404e4ae |
|
BLAKE2b-256 | 582a44417617bb09b6c916aa41c3a12d385b467763ccc5ddc4c42453e32ca9ec |