Introduction to singleCellTK

The Single Cell Toolkit (SCTK) is an interactive scRNA-Seq analysis package that allows a user to upload raw scRNA-Seq count matrices and perform downstream scRNA-Seq analysis interactively through a web interface, or through a set of R functions through the command line. The package is written in R with a graphical user interface (GUI) written in Shiny. Users can perform analysis with modules for filtering raw results, clustering, batch correction, differential expression, pathway enrichment, and scRNA-Seq study design, all in a simple to use point and click interface. The toolkit also supports command line data processing, and results can be loaded into the GUI for additional exploration and downstream analysis.


Note: Some package dependencies require Bioconductor v3.6,

singleCellTK is under development. You can install the development version from github:

# install.packages("devtools")

Troubleshooting Installation

For the majority of users, the commands above will install the latest version of the singleCellTK without any errors. Rarely, you may encounter an error due to previously installed versions of some packages that are required for the singleCellTK. If you encounter an error during installation, use the commands below to check the version of Bioconductor that is installed:


If the version number is not 3.6 or higher, you must upgrade Bioconductor to install the toolkit:


After you install Bioconductor 3.6 or higher, you should be able to install the toolkit using devtools::install_github("compbiomed/singleCellTK"). If you still encounter an error, ensure your Bioconductor packages are up to date by running the following command.


If the command above does not return TRUE, run the following command to update your R packages:


Then, try to install the toolkit again:


If you still encounter an error, please contact us and we'd be happy to help.

Data Structure

The Single Cell Toolkit uses a SingleCellExperiment object to store data matrices along with annotation information, metadata, and reduced dimensionality data (PCA, t-SNE, etc.).

Run the Shiny App

Example Data

Example data is available within the app. To get started, simply run the singleCellTK function:


Upload data directly through the shiny app

To upload count matrices and annotation information stored as text files, run the singleCellTK function:


Then, follow data upload instructions in the "Upload Tab" vignette.

Load data from a SingleCellExperiment object

Creating a SingleCellExperiment object

To create a SingleCellExperiment object, we have provided the createSCE() function:

counts_mat <- assay(mouseBrainSubsetSCE, "counts")
sample_annot <- colData(mouseBrainSubsetSCE)
row_annot <- rowData(mouseBrainSubsetSCE)
newSCE <- createSCE(assayFile = counts_mat, annotFile = sample_annot, 
                    featureFile = row_annot, assayName = "counts",
                    inputDataFrames = TRUE, createLogCounts = TRUE)

Loading data stored in a SingleCellExperiment object

Once a SingleCellExperiment object is created, the object can be loaded directly from the R console:



To help you get started with the SCTK, we have prepared several vignettes in two categories: interactive analysis and R console analysis.

Interactive Analysis

R Console Analysis

Session info {.unnumbered}


Try the singleCellTK package in your browser

Any scripts or data that you put into this service are public.

singleCellTK documentation built on June 26, 2018, 10 a.m.