Skip to main content

A Python library to aid in the processing and interpretation of mass spectrometric data.

Project description

mass-spec-python-tools: mass spec made easier

What is it?

This is a collection of scripts to aid in the processing and interpretation of mass spectrometric data.

The project was created by Lars Yunker in the McIndoe group at the University of Victoria, Victoria, BC, Canada.

If you use these tools in your research endeavours, please cite Yunker et al. J. Chem. Inf. Model., 2019, 59(4) pp 1295-1300.

Requirements and Installation:

This package has been written for python 3.5+.

Getting started

This framework is available on PyPI. To install, execute

pip install pythoms

in the command line on a Python-configured computer. If you do not yet have Python on your computer, there are many excellent tutorials on accomplishing this.

PyPI installations do not include the scripts in this repository. If you wish to use these scripts, download the entire repository to a folder on your computer, run python install with that folder as the current working directory (this installs the dependencies), and execute the scripts as needed.

  • Python users interested in applying the scripts directly can edit the input parameters in the files.
  • Developers can import many of the classes to create scripts tailored to their needs.

To help novice users, a tutorial video for PythoMS installation on Windows is available.


We have created tutorial videos on the use of several scripts in this package:


We welcome contributions, so if you're interested in contributing please email larsy[at]uvic{dot}ca. Particularly, we are in need of mzML file examples where the data was not generated by Proteowizard (intially from a Waters instrument).

Many thanks to the following individuals for their contributions to PythoMS:

  • Sofia Donnecke
  • Michelle Ting
  • Darien Yeung
  • J. Scott McIndoe


If you encounter an error, please submit an Issue in Github with as much information as possible.

Things that are helpful to include:

  • the raw file you were trying to parse (zip it first)
  • the exact parameters you were using
  • any additional files you were supplying to the script
  • the error output



This script takes supplied raw and parameters files and generates reconstructred single ion monitoring traces. A tutorial video is available.

isotope pattern overlay

Takes a supplied mass spectrum and overlays the predicted isotope pattern onto it. A tutorial video is available.

video frame renderer

A tool for generating a series of images showing mass spectrum and traces which can be combined into a video. Tutorial videos are available for both Windows and Mac

y-axis zoom figure

Renders a series of images which zoom into the y-axis to illustrate the dynamic range of mass spectrometers.

Highlighted Modules


Contains classes for describing the physico-chemical properties of molecules. The IPMolecule class contains algorithms for predicting the isotope pattern of said molecule.


Contains an efficient helper class for combining spectra of different shape and managing impractically precise x values.


Contains classes for interacting with mzML files in a pythonic manner.


These tools are licensed under the MIT license.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pythoms, version 1.5.1
Filename, size File type Python version Upload date Hashes
Filename, size pythoms-1.5.1-py3-none-any.whl (111.2 kB) File type Wheel Python version py3 Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page