Welcome to memo’s documentation!


MEMO is a method allowing a Retention Time (RT) agnostic alignment of metabolomics samples using the fragmentation spectra (MS2) of their constituents. The occurrence of MS2 peaks and neutral losses (to the precursor) in each sample is counted and used to generate an MS2 fingerprint of the sample. These fingerprints can in a second stage be aligned to compare different samples. Once obtained, different filtering (remove peaks/losses from blanks for example) and visualization techniques (MDS/PCoA, TMAP, Heatmap, …) can be used. MEMO suits particularly well to compare chemodiverse samples, i.e. with a poor features overlap, or to compare samples with a strong RT shift, acquired using different LC methods or even different mass spectrometers technology (MaXis Q-ToF vs Q-Exactive).

MEMO is mainly built on matchms and spec2vec packages for handling the MS2 spectra and converting them into documents. Huge thanks to them for the amazing work done with these packages!

To install it:

First, make sure to have anaconda installed.

  1. Create a new conda environment to avoid clashes:

conda create --name memo python=3.8
conda activate memo
  1. Install with pip:

pip install numpy
pip install memo-ms

If you have an error, try installing scikit-bio from conda-forge before installing the package with pip:

conda install -c conda-forge scikit-bio
pip install memo-ms

You can clone the Github package repository to get the demo files and the tutorial!


Different examples of application and comparison to other MS/MS-based metrics are available here and the corresponding notebooks are available on GitHub.

Indices and tables