A Snakemake workflow for automatic processing and quality control of protein mass spectrometry data.
The usage of this workflow is described in the Snakemake Workflow Catalog.
Detailed information about input data and workflow configuration can also be found in the config/README.md.
If you use this workflow in a paper, don't forget to give credits to the authors by citing the URL of this repository or its DOI.
This workflow is a best-practice workflow for the automated analysis of mass spectrometry proteomics data. It currently supports automated analysis of data-dependent acquisition (DDA) data with label-free quantification. An extension by different workflows (DIA, isotope labeling) is planned in the future.
The workflow is mainly a wrapper for the excellent tools fragpipe and MSstats, with additional modules that supply and check the required input files, and generate reports. The workflow is built using snakemake and processes MS data using the following steps:
- Prepare
workflowfile (pythonscript) - Check user-supplied sample sheet (
pythonscript) - Check user-supplied database FASTA file (
pythonscript) - Generate decoy proteins (DecoyPyrat)
- Import raw files, search protein database (fragpipe)
- Align feature maps using IonQuant (fragpipe)
- Import quantified features, infer and quantify proteins (R MSstats)
- Compare different biological conditions, export results (R MSstats)
- Generate HTML report with embedded QC plots (R markdown)
- Generate PDF report from HTML weasyprint
- Send out report by email (
pythonscript) - Clean up temporary files after workflow execution (
bashscript)
If you want to contribute, report issues, or suggest features, please get in touch on github.
To run the workflow from command line, change the working directory.
cd path/to/snakemake-workflow-nameAdjust options in the default config file config/config.yml.
Before running the complete workflow, you can perform a dry run using:
snakemake --dry-runTo run the workflow with test files using conda:
snakemake --cores 4 --sdm conda --directory .test- Dr. Michael Jahn
- Affiliation: Max-Planck-Unit for the Science of Pathogens (MPUSP), Berlin, Germany
- ORCID profile: https://orcid.org/0000-0002-3913-153X
- github page: https://github.com/m-jahn
- the contents of this repository are licensed with the MIT License
- you are free use the workflow for your purposes free of charge
- you are free to modify the contents and create derivative work
- the only condition is that you refer to the original license and copyright owners (MPUSP)
- all contents come with absolutely no warranty to work for your or any other purposes
- all third party dependencies are licensed under their own terms and not covered by this license
- Essential tools are linked in the top section of this document
- The core of this workflow are the two external packages fragpipe and MSstats
fragpipe
- Kong, A. T., Leprevost, F. V., Avtonomov, D. M., Mellacheruvu, D., & Nesvizhskii, A. I. (2017). MSFragger: ultrafast and comprehensive peptide identification in mass spectrometry–based proteomics. Nature Methods, 14(5), 513-520.
- da Veiga Leprevost, F., Haynes, S. E., Avtonomov, D. M., Chang, H. Y., Shanmugam, A. K., Mellacheruvu, D., Kong, A. T., & Nesvizhskii, A. I. (2020). Philosopher: a versatile toolkit for shotgun proteomics data analysis. Nature Methods, 17(9), 869-870.
- Yu, F., Haynes, S. E., & Nesvizhskii, A. I. (2021). IonQuant enables accurate and sensitive label-free quantification with FDR-controlled match-between-runs. Molecular & Cellular Proteomics, 20.
MSstats
- Choi M (2014). MSstats: an R package for statistical analysis of quantitative mass spectrometry-based proteomic experiments. Bioinformatics, 30.
