Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.

Project migration

Note that this project has been migrated to Gitlab. Please submit issues or feature requests on that website.

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.


A series of python scripts which aid in the processing and interpretation of mass spectrometric data (formerly Mass-Spec-Python-Tools)




No packages published