Introduction to LCMSQA

The goal of ‘LCMSQA’ is to make it easy to check the quality of liquid chromatography/mass spectrometry (LC/MS) experiments using a ‘shiny’ application. It uses the R package ‘xcms’ workflow for data import, visualization, and feature detection of internal standards or known metabolites that can be used to evaluate and adapt the peak detection settings.


In R session, please type

## Install from CRAN

## Load LCMSQA pacakge

Parallel Processing

Most methods in xcms support parallel processing via ‘BiocParallel’ to save time. We highly recommend to initiate the parallel processing setup explicitly before starting the app.

To initiate multicore-based parallel evaluation in Unix-based systems (e.g., Linux, macOS),

## Unix-based systems

On Windows, MulticoreParam results in serial evaluation. Please use SnowParam instead.

## Windows system

For other options and details, please check the BiocParallel package vignettes.

Shiny App

Launch the shiny app with


The system’s default web browser will be launched automatically after the app is started.

Example Data

The example data used in this vignette can be downloaded from the following links: example1.mzML, example2.mzML, and IS_info.csv (right click -> save link as).

File Input

The app needs the following input:

  1. (required) mass-spectrometry data files of quality control (QC) samples in open formats: AIA/ANDI NetCDF, mzXML, mzData and mzML

Check ‘msconvert’ if you have data in different formats. Multiple files can be selected.

  1. (optional) internal standard information (or other known metabolites) in a CSV format with the columns:

You will see the menu to upload a CSV file after uploading mass-spectrometry files. You can skip this step and specify mass-to-charge ratio (m/z) manually to explore metabolic features of interest.

Tuning Parameters

You can tune multiple parameters for metabolic feature detection (peak picking + grouping).

1. Set m/z and retention time of interest

2. Peak picking using the centWave method

3. Peak grouping using the peak density method


The application consists of four main tabs:

1. TIC

This is the default tab that is opened once you upload the files. The TIC chromatogram shows the summed signals over the entire range of masses. Alternatively, base peak chromatogram can be displayed to monitor the most intense signal in each spectrum. The Collapse checkbox is used to display the chromatograms of multiple files in one figure.

2. Mass Spectrum

In this tab, a mass spectrum is presented in which the most intense ion is re-scaled to an abundance of 100. If you click any data point within a chromatogram on top, a mass spectrum of the given scan time will be automatically displayed.

3. XIC

For a specific slice of m/z and retention time ranges, clicking Generate XIC in the sidebar panel generates plots where each figure shows an XIC on top and m/z variation against retention time on bottom. You can choose a subset of files to display from the dropdown menu.

4. Feature Detection

If you click Detect Features in the sidebar panel, chromatographic peak detection is performed using the centWave method and identified peaks are grouped into a feature. This tab shows apex positions of m/z and retention time values within the feature on the left and integrated peak areas on the right using a bar plot. Relative standard deviation (RSD) is calculated to measure the reproducibility among QC samples. A RSD value is not calculated if there is any missing value in the integrated peak area. In that case, you can exclude samples with missing values from the dropdown menu.


  1. Smith, C.A. and Want, E.J. and O’Maille, G. and Abagyan,R. and Siuzdak, G.: XCMS: Processing mass spectrometry data for metabolite profiling using nonlinear peak alignment, matching and identification, Analytical Chemistry, 78:779-787 (2006)

  2. Ralf Tautenhahn, Christoph Boettcher, Steffen Neumann: Highly sensitive feature detection for high resolution LC/MS BMC Bioinformatics, 9:504 (2008)