MSstatsLiP is an R/Bioconductor package for statistical analysis of limited proteolysis mass spectrometry (LiP-MS) experiments, which detect changes in protein structure — for example, those caused by compound binding or conformational shifts — in cellular lysates. The workflow models two datasets in parallel: the structural LiP peptides (from a limited proteolytic digest) and a trypsin-only (TrP) control that captures overall protein abundance. By adjusting LiP-peptide changes for the corresponding protein-level changes, MSstatsLiP distinguishes genuine structural alterations from differences in protein expression. The package provides functions for summarization, estimation of LiP peptide abundance, detection of changes across conditions, and specialized visualizations such as structural and proteolytic-resistance barcode plots.
MSstatsLiP is part of the MSstats family of packages, developed and maintained by the Vitek Lab at Northeastern University, in collaboration with the Picotti Lab at ETH Zurich. The package and its documentation are also available at msstats.org.
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("MSstatsLiP")The development version can be installed directly from this repository:
remotes::install_github("Vitek-Lab/MSstatsLiP")library(MSstatsLiP)
# Example Spectronaut LiP and TrP (trypsin-only control) reports
data(LiPRawData)
data(TrPRawData)
fasta <- system.file("extdata/ExampleFastaFile.fasta", package = "MSstatsLiP")
# Convert Spectronaut output to MSstatsLiP format
formatted <- SpectronauttoMSstatsLiPFormat(LiPRawData, fasta, TrPRawData,
use_log_file = FALSE)
# Summarize feature intensities to peptide/protein level
summarized <- dataSummarizationLiP(formatted, use_log_file = FALSE)
# Test for structural changes across conditions (LiP, TrP, and adjusted models)
model <- groupComparisonLiP(summarized, fasta = fasta, use_log_file = FALSE)
head(model[["LiP.Model"]])Real experiments typically start by converting a search tool's output into
MSstatsLiP format with one of the *toMSstatsLiPFormat() converters below, then
proceed with dataSummarizationLiP() and groupComparisonLiP() as above. See
the workflow vignette for a complete, worked example.
MSstatsLiP does not read raw search-tool output directly. Instead, a converter
translates each tool's LiP and TrP reports into MSstatsLiP format before
dataSummarizationLiP() is called:
| Search tool / format | Converter function |
|---|---|
| Spectronaut | SpectronauttoMSstatsLiPFormat() |
| Skyline | SkylinetoMSstatsLiPFormat() |
| DIA-NN | DIANNtoMSstatsLiPFormat() |
See the MSstatsLiP workflow vignette for the required input files and options for each converter.
- MSstatsLiP workflow — full worked example from raw data to results
- Proteolytic resistance notebook — proteolytic-resistance analysis
- Official website: msstats.org
- Bioconductor package page and reference manual
- Questions about usage, statistical methods, or troubleshooting: please post to the MSstats Google Group. This is monitored by the development team and searchable, so it's the fastest way to get help and to see if your question has already been answered.
- Bug reports and feature requests for this repository: please open a GitHub issue.
If you use MSstatsLiP, please cite:
- Malinovska L, Cappelletti V, Kohler D, Piazza I, Tsai TH, Pepelnjak M, Stalder P, Dörig C, Sesterhenn F, Elsässer F, Kralickova L, Beaton N, Reiter L, de Souza N, Vitek O, Picotti P. Proteome-wide structural changes measured with limited proteolysis-mass spectrometry: an advanced protocol for high-throughput applications. Nat Protoc. 2023;18(3):659-682. DOI: 10.1038/s41596-022-00771-x
MSstats development has been supported by the Chan Zuckerberg Initiative's Essential Open Source Software for Science.
MSstatsLiP is released under the Artistic-2.0 license.