PreSCRuB is a tool for providing recommendations for experimental design, number of control samples to collect, and where to place them on a sequencing plate. Use of preSCRuB during the experimental design process will allow for stronger downstream applications of SCRuB. These recommendations are computed by simulating thousands of microbiome experiments, and identifying the scenarios in which SCRuB performs best.
To obtain preSCRuB’s recommendations, the minimum
information needed is a set of assumptions regarding your data. More
refined preSCRuB recommendations can be implemented through installing
our preSCRuB package.
preSCRuB is currently available through two avenues:
In the Rshiny app, you will observe the interface shown below. By adjusting the various parameters, you can obtain our plate design recommendation (upper right-hand panel), and heatmaps summarizing the results across their simulation parameters (bottom right). The parameters include the expected diversity of the samples of interest, the diversity of the contamination source, the expected taxonomic similarity between the contamination source and the samples of interests, and the expected levels of contamination and well-to-well leakage.
In some cases, it may be advantageous to run preSCRuB simulations on even more specific situations, such as when you have pilot data. To support such use cases, we offer the option to run preSCRuB on your machine. To do this, begin by installing the SCRuB package, as described on the home page. Next, from an R environment, install the additional preSCRuB prerequisites:
install.packages( c('shiny','DT','ggrepel','shinycssloaders','shinythemes','philentropy','gridExtra','Pareto','cowplot','golem') )
devtools::install_github('biobakery/SparseDOSSA2')
Once the prerequisites are installed, from the command line you can clone the preSCRuB repository, and run the application:
git clone https://github.com/korem-lab/preSCRuB.git
Rscript -e 'library(methods); shiny::runApp("preSCRuB/ShinyApp/", launch.browser = TRUE)'
The following window will pop up. This window contains the same set of parameters in the public Rshiny app, with the additions of 1) free text inputs for other parameters, 2) optional upload button to run simulations on data similar to your data of interest (e.g., pilot data), and 3) a bar to control the number of simulations to run.
For a user to upload samples, select the browse button to search
through your local machine and choose a file of sample read counts in
.csv
file, in in a 1-row-per-sample format. In this
example, we use the plasma data from the SCRuB tutorial (available in
our github
repository). We recommend that users ensure their data format
matches those that we supply.
Once content with the specified preSCRuB parameters, click on the
Compute Plate Recommendations
to start running the
simulations to evalute SCRuB’s performance across different plate design
parameters. While the simulations are running, a loading icon will be
displayed as follows: