The bandle (Bayesian Analysis of Differential Localisation Experiments) package is an R/Bioconductor package for analysing differential localisation experiments, include storage, computation, statistics and visulisations.
Users will require a working version of R, currently at least version >4. It is recommended to use RStudio. The package can then be installed using the Bioconductor or devtools
package. The package should take a few minutes to install on a regular desktop or laptop. The package will need to be loaded using library(bandle)
To install the stable Bioconductor release (recommended):
## unless BiocManager is already installed
install.packages("BiocManager")
## then
BiocManager::install("bandle")
Unstable/development package version install:
devtools::install_github("ococrook/bandle")
We do not advise you install the unstable version unless you know what you are doing as not all pre-release features may be tested or documented.
Please make sure you are running the latest version of R. Non-standard library
dependencies may be missing on some operating systems, for example, using
Linux/Ubuntu in a Docker container may requrie the installation of
libxml2-dev, zlib1g-dev, libnetcdf-dev and other libraries. These are
required to install bandle
and dependent R packages. These can be installed,
for example if using Linux/Ubuntu using sudo apt install libxml2-dev
or directly from binary e.g. sudo apt install r-cran-xml2
.
The bandle
package implements the BANDLE method for the analysis of comparative/dynamic mass spectrometry based proteomics experiments. Data from form such experiments most commonly yield a matrix of measurements where we have proteins/peptides/peptide spectrum matches (PSMs) along the rows, and samples/fractions along the columns. In comparative/dynamic experiments where we expect re-localisation upon some stimulus to sub-cellular environment, the data analysis is more challenging The BANDLE method takes two (replicated) datasets as input and uses these data to compute the probability that a protein differentially localises upon cellular perturbation, as well quantifying the uncertainty in these estimates.
To use bandle the data must be stored as a list of MSnSet instances, as implemented in the Bioconductor MSnbase
package. Please see the relevant vignettes in MSnbase for constructing these data containers.
There are currently two vignettes that accompany the package. The first vignette v01-getting-started provides an introduction to the bandle
package and follows a short theortical example of how to perform differential localisation analysis of quantitative proteomics data using the BANDLE model (Crook et al. 2022 doi: https://doi.org/10.1101/2021.01.04.425239). Explanation and general recommendations of the input parameters are provided in this vignette.
The second vignette v02-workflow is a more comprehensive workflow which follows a real-life use case applying the BANDLE methods and workflow to the analysis of data generated from spatial proteomics of a human THP-1 monocyte system.
These vignettes can be found through the Bioconductor landing page for bandle
, here in the repo and also the Articles tab of the accompanying web page.
Notes on run time: A small dataset can take around an hour to run; for large dataset we recommend a a compute server. The longest the analysis has taken has been a couple of hours on a single compute node. The demo take a few minutes to run.
Documentation to run the main functions can be found in the vignette or by typing ?bandle
in the console after loading the package.
We recommend reading our other workflow manuscripts:
Basic processing and machine learning:
https://f1000research.com/articles/5-2926
Bayesian analysis:
https://f1000research.com/articles/8-446
The BANDLE manusript is currently on biorxiv:
https://www.biorxiv.org/content/10.1101/2021.01.04.425239v3
For manuscripts that apply bandle, see:
https://www.biorxiv.org/content/10.1101/2022.01.24.477541v1 https://linkinghub.elsevier.com/retrieve/pii/S1535-9476(22)00002-0
Contributions are welcome, please open an issue so we can discuss any contribution in advance.
This package is actively being developed and maintained, please open Github issue if you would like to request or discuss a particular feature.