psims

A declarative API for writing XML documents for HUPO PSI-MS mzML and mzIdentML

https://github.com/mobiusklein/psims

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    1 of 4 committers (25.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (6.7%) to scientific vocabulary

Keywords

mzidentml mzml obo xml-serialization
Last synced: 6 months ago · JSON representation

Repository

A declarative API for writing XML documents for HUPO PSI-MS mzML and mzIdentML

Basic Info
Statistics
  • Stars: 22
  • Watchers: 3
  • Forks: 10
  • Open Issues: 4
  • Releases: 0
Topics
mzidentml mzml obo xml-serialization
Created about 9 years ago · Last pushed about 1 year ago
Metadata Files
Readme Changelog License

README.md

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: sh pip install psims

With conda: sh conda install -c bioconda -c conda-forge -c defaults psims

mzML Minimal Example

```python from psims.mzml.writer import MzMLWriter

Load the data to write

scans = getscandata()

with MzMLWriter(open("out.mzML", 'wb'), close=True) as out: # Add default controlled vocabularies out.controlledvocabularies() # Open the run and spectrum list sections with out.run(id="myanalysis"): spectrumcount = len(scans) + sum([len(products) for _, products in scans]) with out.spectrumlist(count=spectrumcount): for scan, products in scans: # Write Precursor scan out.writespectrum( scan.mzarray, scan.intensityarray, id=scan.id, params=[ "MS1 Spectrum", {"ms level": 1}, {"total ion current": sum(scan.intensityarray)} ]) # Write MSn scans for prod in products: out.writespectrum( prod.mzarray, prod.intensityarray, id=prod.id, params=[ "MSn Spectrum", {"ms level": 2}, {"total ion current": sum(prod.intensityarray)} ], # Include precursor information precursorinformation={ "mz": prod.precursormz, "intensity": prod.precursorintensity, "charge": prod.precursorcharge, "scanid": prod.precursorscanid, "activation": ["beam-type collisional dissociation", {"collision energy": 25}], "isolationwindow": [prod.precursormz - 1, prod.precursormz, prod.precursormz + 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

Owner

  • Name: Joshua Klein
  • Login: mobiusklein
  • Kind: user
  • Location: Boston

GitHub Events

Total
  • Issues event: 2
  • Watch event: 2
  • Issue comment event: 7
  • Push event: 2
  • Create event: 1
Last Year
  • Issues event: 2
  • Watch event: 2
  • Issue comment event: 7
  • Push event: 2
  • Create event: 1

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 454
  • Total Committers: 4
  • Avg Commits per committer: 113.5
  • Development Distribution Score (DDS): 0.009
Past Year
  • Commits: 30
  • Committers: 1
  • Avg Commits per committer: 30.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Joshua Klein m****n@g****m 450
Sean Peters s****s@c****u 2
Johannes Leufken j****n@m****e 1
Ralf Gabriels r****g@h****e 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 18
  • Total pull requests: 5
  • Average time to close issues: 2 months
  • Average time to close pull requests: 4 days
  • Total issue authors: 12
  • Total pull request authors: 4
  • Average comments per issue: 4.61
  • Average comments per pull request: 1.0
  • Merged pull requests: 5
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • bretttully (4)
  • lars-kolbowski (2)
  • levitsky (2)
  • jspaezp (2)
  • RalfG (1)
  • sorenwacker (1)
  • mafreitas (1)
  • mwang87 (1)
  • bkalafut1 (1)
  • MKoesters (1)
  • ometa-evan (1)
  • mobiusklein (1)
Pull Request Authors
  • speters-cmri (2)
  • RalfG (1)
  • JB-MS (1)
  • mobiusklein (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 6,289 last-month
  • Total docker downloads: 37
  • Total dependent packages: 8
  • Total dependent repositories: 19
  • Total versions: 70
  • Total maintainers: 1
pypi.org: psims

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

  • Versions: 70
  • Dependent Packages: 8
  • Dependent Repositories: 19
  • Downloads: 6,289 Last month
  • Docker Downloads: 37
Rankings
Dependent packages count: 1.2%
Dependent repos count: 3.3%
Docker downloads count: 3.8%
Downloads: 4.6%
Average: 6.5%
Forks count: 11.4%
Stargazers count: 14.5%
Maintainers (1)
Last synced: 6 months ago

Dependencies

requirements.txt pypi
  • h5py *
  • hdf5plugin *
  • hdf5plugin <3.0.0
  • lxml *
  • numpy *
  • pynumpress *
  • pyteomics >=4.0.1
  • six *
  • sqlalchemy *
setup.py pypi
  • lxml *
  • numpy *
  • six *
  • sqlalchemy *
.github/workflows/pythonpackage.yaml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
.github/workflows/pythonpublish.yaml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite