PeakPerformance

PeakPerformance is a Python toolbox for estimating peak areas from mass-spectrometry or HPLC datasets under uncertainty. It applies Bayesian inference using the PyMC library to parametric models of peak curves.

3
contributors
498 commits | Last commit 1 week ago

Cite this software

What PeakPerformance can do for you

PyPI version pipeline coverage documentation DOI

About PeakPerformance

PeakPerformance employs Bayesian modeling for chromatographic peak data fitting. This has the innate advantage of providing uncertainty quantification while jointly estimating all peak parameters united in a single peak model. As Markov Chain Monte Carlo (MCMC) methods are utilized to infer the posterior probability distribution, convergence checks and the aformentioned uncertainty quantification are applied as novel quality metrics for a robust peak recognition.

Installation

It is highly recommended to follow the following steps and install PeakPerformance in a fresh Python environment:

  1. Install the package manager Mamba. Choose the latest installer at the top of the page, click on "show all assets", and download an installer denominated by "Mambaforge-version number-name of your OS.exe", so e.g. "Mambaforge-23.3.1-1-Windows-x86_64.exe" for a Windows 64 bit operating system. Then, execute the installer to install mamba and activate the option "Add Mambaforge to my PATH environment variable".

⚠ If you have already installed Miniconda, you can install Mamba on top of it but there are compatibility issues with Anaconda.

ℹ The newest conda version should also work, just replace mamba with conda in step 2.

  1. Create a new Python environment in the command line using the provided environment.yml file from the repo. Download environment.yml first, then navigate to its location on the command line interface and run the following command:
mamba env create -f environment.yml

Naturally, it is alternatively possible to just install PeakPerformance via pip:

pip install peak-performance

First steps

Be sure to check out our thorough documentation. It contains not only information on how to install PeakPerformance and prepare raw data for its application but also detailed treatises about the implemented model structures, validation with both synthetic and experimental data against a commercially available vendor software, exemplary usage of diagnostic plots and investigation of various effects. Furthermore, you will find example notebooks and data sets showcasing different aspects of PeakPerformance.

How to contribute

If you encounter bugs while using PeakPerformance, please bring them to our attention by opening an issue. When doing so, describe the problem in detail and add screenshots/code snippets and whatever other helpful material you can provide. When contributing code, create a local clone of PeakPerformance, create a new branch, and open a pull request (PR).

How to cite

Head over to Zenodo to generate a BibTeX citation for the latest release. A publication has just been submitted to a scientific journal. Once published, this section will be updated.

Keywords
Programming languages
  • Python 94%
  • TeX 6%
License
  • AGPL-3.0-or-later
</>Source code
Packages
pypi.org

Participating organisations

Forschungszentrum Jülich

Reference papers

Contributors

JN
Jochen Nießer
Developer
Forschungszentrum Jülich GmbH
MO
Michael Osthege
Developer
Forschungszentrum Jülich GmbH
SN
Stephan Noack
Project Supervisor
Forschungszentrum Jülich GmbH