pmultiqc

pmultiqc πŸ”πŸ“ˆ

Python application Upload Python Package PyPI - Version PyPI - Downloads Pepy Total Downloads GitHub Repo stars

πŸš€ What is pmultiqc?

pmultiqc is a MultiQC plugin for comprehensive quality control reporting of proteomics data. It generates interactive HTML reports with visualizations and metrics to help you assess the quality of your mass spectrometry-based proteomics experiments.

✨ Key Features

🌐 Public Services

You can use pmultiqc through our public web services:

Service URL Status Description
EBI PRIDE Service https://www.ebi.ac.uk/pride/services/pmultiqc/ PRIDE pmultiqc service Official EBI service with PRIDE integration
FU Berlin University Service https://pmultiqc.bsc.fu-berlin.de FU Berlin pmultiqc service pmultiqc service at Freie UniversitΓ€t Berlin
TΓΌbingen University Service https://abi-services.cs.uni-tuebingen.de/pmultiqc/ TΓΌbingen pmultiqc service pmultiqc service at TΓΌbingen University

🎯 Service Features

πŸ“‹ Supported Data Sources

pmultiqc supports the following data sources:

1. quantms pipeline output files:

2. MaxQuant result files:

3. DIA-NN result files:

4. ProteoBench file:

5. mzIdentML files:

πŸ’Ύ Installation

Install from PyPI

# To install the stable release from PyPI:
pip install pmultiqc

Install from Source (Without PyPI)

# Fork the repository on GitHub

# Clone the repository
git clone https://github.com/your-username/pmultiqc.git
cd pmultiqc

# Install the package locally
pip install .

# Now you can run pmultiqc on your own dataset

πŸ› οΈ Usage

pmultiqc is used as a plugin for MultiQC. After installation, you can run it using the MultiQC command-line interface.

Basic Usage

multiqc {analysis_dir} -o {output_dir}

Where:

Examples

For quantms pipeline results

# Basic usage
multiqc --quantms_plugin /path/to/quantms/results -o ./report

# With specific options
multiqc --quantms_plugin /path/to/quantms/results -o ./report --remove_decoy --condition factor

For MaxQuant results

multiqc --maxquant_plugin /path/to/maxquant/results -o ./report

For DIA-NN results

# Discover report inside a results folder
multiqc --diann_plugin /path/to/diann/results -o ./report

# Directly pass a DIA-NN report file (TSV or Parquet)
# Note: MultiQC requires an analysis directory argument; use '.' as a placeholder
multiqc --diann_plugin --diann_report /path/to/report.tsv . -o ./report
multiqc --diann_plugin --diann_report /path/to/report.parquet . -o ./report

For ProteoBench files

multiqc --proteobench_plugin /path/to/proteobench/files -o ./report

For mzIdentML files

multiqc --mzid_plugin /path/to/mzid/files -o ./report

Command-line Options

Option Description Default
--raw Keep filenames in experimental design output as raw False
--condition Create conditions from provided columns -
--remove_decoy Remove decoy peptides when counting True
--decoy_affix Pre- or suffix of decoy proteins in their accession DECOY_
--contaminant_affix The contaminant prefix or suffix CONT
--affix_type Location of the decoy marker (prefix or suffix) prefix
--disable_plugin Disable pmultiqc plugin False
--quantification_method Quantification method for LFQ experiment feature_intensity
--disable_table Disable protein/peptide table plots for large datasets False
--ignored_idxml Ignore idXML files for faster processing False
--quantms_plugin Generate reports based on Quantms results False
--diann_plugin Generate reports based on DIANN results False
--diann_report Path to DIA-NN main report (.tsv or .parquet). When provided with --diann_plugin, you can use . as the analysis directory placeholder. -
--maxquant_plugin Generate reports based on MaxQuant results False
--proteobench_plugin Generate reports based on ProteoBench result False
--mzid_plugin Generate reports based on mzIdentML files False

πŸ“Š QC Metrics and Visualizations

pmultiqc generates a comprehensive report with multiple sections:

πŸ“‘ General Report

πŸ“š Results Tables

πŸ“ˆ Identification Statistics

πŸ” Example Reports

You can find example reports on the docs page. Here are the direct links to different example reports:

Example Type Description Link
LFQ Label-free quantification LFQ Example
TMT Tandem mass tag TMT Example
quantms DIA Data-independent acquisition quantms DIA Example
DIA-NN Data-independent acquisition DIA-NN Example
MaxQuant MaxQuant results MaxQuant Example
MaxQuant DIA MaxQuant DIA results MaxQuant DIA Example
ProteoBench ProteoBench results ProteoBench Example
mzIdentML with mzML mzIdentML with mzML files mzIdentML with mzML Example
mzIdentML with MGF mzIdentML with MGF files mzIdentML with MGF Example

πŸ‘₯ Contributing

To contribute to pmultiqc:

  1. 🍴 Fork the repository
  2. πŸ“₯ Clone your fork: git clone https://github.com/YOUR-USERNAME/pmultiqc
  3. 🌿 Create a feature branch: git checkout -b new-feature
  4. ✏️ Make your changes
  5. πŸ”§ Install in development mode: pip install -e .
  6. πŸ§ͺ Test your changes: cd tests && multiqc resources/LFQ -o ./
  7. πŸ’Ύ Commit your changes: git commit -am 'Add new feature'
  8. πŸ“€ Push to the branch: git push origin new-feature
  9. πŸ“© Submit a pull request

πŸ“– Documentation

For more detailed information, visit the pmultiqc GitHub repository or check the documentation site.

πŸ“œ License

This project is licensed under the terms of the LICENSE file included in the repository.

πŸ“ Citation

If you use pmultiqc in your research, please cite:

pmultiqc: A MultiQC plugin for proteomics quality control
https://github.com/bigbio/pmultiqc

❓ Need Help?

If you have questions or need assistance: