Skip to main content

pyMacroMS - High performance quantification of complex high resolution polymer mass spectra

Project description

pyMacroMS

High performance quantification of complex high resolution polymer mass spectra

The purpose of this program is to identify and quantify macromolecular species in high resolution mass spectra based on the used monomer(s), possible end-groups and the adduct ion. Experimental spectra are imported as a centroided peaklist from a comma-separated values (csv) file or directly from a Thermo RAW file (from v1.0.0). Please find code for example usage on our webpage.

From version 1.0.0, pyMacroMS requires a 64-bit version of Python.

Dependencies

pyMacroMS requires the following modules to be installed:

  • IsoSpecPy for the generation of isotopic patterns
  • numpy and pandas for data processing
  • sklearn for quantification via linear regression
  • matplotlib for quick representation of results
  • progressbar2 for feedback during the more time consuming steps
  • reportlab and svglib for the generation of a PDF report
  • pythonnet for the interface with Thermo's RawFileReader
Citation

Please refer to our publication for more details about the algorithm and cite us when using pyMacroMS in your work:

K. De Bruycker, T. Krappitz, C. Barner-Kowollik, ACS Macro Lett. 2018, 1443-1447.

License
  • pyMacroMS is available free of charge under an MIT License. See the LICENCE file for more details.
  • pyMacroMS uses the RawFileReader reading tool. Copyright © 2016 by Thermo Fisher Scientific, Inc. All rights reserved. If you use pyMacroMS, you agree to the license agreement of RawFileReader, of which a copy is provided when installing pyMacroMS.
Changelog
1.1.5
  • Now works with IsoSpecPy 2.x, tested with 2.1.4, but does not work with IsoSpecPy 1.x any more. Special thanks to the developers, Mateusz Lacki and Michal Startek, for their help with the implementation.
  • Further speed improvements
  • Minor bugfixes
1.1.0
  • Speed improvements for assembling the possible monomer combinations in the polymer simulation. Special thanks to Matthieu Soete for sharing his insights.
  • Preparations for a GUI
1.0.9
  • Introduced basic support for Scan Filters (limit the imported data to 1 type of scan). Different scan types are detrimental for the averaging algorithm and probably don't make much sense anyway (?)
  • Increase compatibility with Unix systems, installation of pythonnet package seems to be the major struggle though
  • MSData class now takes the argument mzOffset, an offset that is added to every m/z value when reading the spectrum.
  • Speed improvements for a large amount of possible compositions
  • Minor bugfixes
1.0.0
  • Thermo RAW files can now be used as input without any pre-processing
    • By default, all scans are imported separately
    • Scans can be averaged by providing a range of scans or retention times
  • New MSData class introduced
    • Handles reading of csv files (previously Spectrum class) and Thermo RAW files
    • Stores all imported spectra and corresponding processed results to allow for batch processing of multiple scans
    • Post-processing of results still in Spectrum class, so on a per-scan base... Future problem
  • Version 1.0.0 and onwards are licensed under an MIT License (rather than a GNU GPL v3.0 for older versions) to comply with the license requirements of Thermo's RawFileReader
0.2.0
  • Isobaric species are now pre-filtered, which leads to a significantly improved calculation time
  • Introduced the option to define a custom database of monomers/endgroups (with a higher priority than the built-in database)
  • Introduced the option to save the output as a PDF report
0.1.2
  • Update code to use the new IsoSpecPy 1.9.X API
0.1.1
  • Minor fixes to the interfacing with IsoSpecPy
  • Fixed compatibility with IsoSpecPy 1.9.X
0.1.0
  • Initial release

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

pymacroms-1.1.5.tar.gz (831.6 kB view details)

Uploaded Source

Built Distribution

pymacroms-1.1.5-py3-none-any.whl (839.1 kB view details)

Uploaded Python 3

File details

Details for the file pymacroms-1.1.5.tar.gz.

File metadata

  • Download URL: pymacroms-1.1.5.tar.gz
  • Upload date:
  • Size: 831.6 kB
  • 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.1 CPython/3.8.6

File hashes

Hashes for pymacroms-1.1.5.tar.gz
Algorithm Hash digest
SHA256 af294b5d854252b470b1bff45f8159cfcd7d9e360c4243c4cb8f77c6d6ac5670
MD5 a05e2b30487d0815aafe6d16ec5f0f8a
BLAKE2b-256 fe3110beae81d3340d5142dc0a3ca5f1ca48c1a9b5ba5aee9fa18750ff0e9834

See more details on using hashes here.

File details

Details for the file pymacroms-1.1.5-py3-none-any.whl.

File metadata

  • Download URL: pymacroms-1.1.5-py3-none-any.whl
  • Upload date:
  • Size: 839.1 kB
  • Tags: 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.1 CPython/3.8.6

File hashes

Hashes for pymacroms-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 544f3de4e83d543baab0fe09b5f06507a2d16d62b8b0ae7bb55d3f7af37b9f5f
MD5 b55f8890d9f8962e2822b556570d94a6
BLAKE2b-256 df138f2dda58f62a4dc9b0e56cd7011f5ec5a973a573aedde873d6f85c5125fd

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