Start the Shiny APP

singleCellTK()

Run the single cell analysis app

Importing scRNA-seq Data

importAlevin()

Construct SCE object from Salmon-Alevin output

importAnnData()

Create a SingleCellExperiment Object from Python AnnData .h5ad files

importBUStools()

Construct SCE object from BUStools output

importCellRanger() importCellRangerV2() importCellRangerV3()

Construct SCE object from Cell Ranger output

importCellRangerV2Sample()

Construct SCE object from Cell Ranger V2 output for a single sample

importCellRangerV3Sample()

Construct SCE object from Cell Ranger V3 output for a single sample

importDropEst()

Create a SingleCellExperiment Object from DropEst output

importExampleData()

Retrieve example datasets

importFromFiles()

Create a SingleCellExperiment object from files

importGeneSetsFromCollection()

Imports gene sets from a GeneSetCollection object

importGeneSetsFromGMT()

Imports gene sets from a GMT file

importGeneSetsFromList()

Imports gene sets from a list

importGeneSetsFromMSigDB()

Imports gene sets from MSigDB

importMitoGeneSet()

Import mitochondrial gene sets

importMultipleSources()

Imports samples from different sources and compiles them into a list of SCE objects

importOptimus()

Construct SCE object from Optimus output

importSEQC()

Construct SCE object from seqc output

importSTARsolo()

Construct SCE object from STARsolo outputs

readSingleCellMatrix()

Read single cell expression matrix

Quality Control & Preprocessing

runCellQC()

Perform comprehensive single cell QC

runDropletQC()

Perform comprehensive droplet QC

runPerCellQC()

Wrapper for calculating QC metrics with scater.

Decontamination

runDecontX()

Detecting contamination with DecontX.

runSoupX()

Detecting and correct contamination with SoupX

Doublet/Empty Droplet Detection

runBarcodeRankDrops()

Identify empty droplets using barcodeRanks.

runEmptyDrops()

Identify empty droplets using emptyDrops.

runBcds()

Find doublets/multiplets using bcds.

runCxds()

Find doublets/multiplets using cxds.

runCxdsBcdsHybrid()

Find doublets/multiplets using cxds_bcds_hybrid.

runScDblFinder()

Detect doublet cells using scDblFinder.

runDoubletFinder()

Generates a doublet score for each cell via doubletFinder

runScrublet()

Find doublets using scrublet.

Normalization

runNormalization()

Wrapper function to run any of the integrated normalization/transformation methods in the singleCellTK. The available methods include 'LogNormalize', 'CLR', 'RC' and 'SCTransform' from Seurat, 'logNormCounts and 'CPM' from Scater. Additionally, users can 'scale' using Z.Score, 'transform' using log, log1p and sqrt, add 'pseudocounts' and trim the final matrices between a range of values.

scaterlogNormCounts()

scaterlogNormCounts Uses logNormCounts to log normalize input data

scaterCPM()

scaterCPM Uses CPM from scater library to compute counts-per-million.

seuratNormalizeData()

seuratNormalizeData Wrapper for NormalizeData() function from seurat library Normalizes the sce object according to the input parameters

seuratScaleData()

seuratScaleData Scales the input sce object according to the input parameters

computeZScore()

Compute Z-Score

trimCounts()

Trim Counts

Batch Effect Correction

runComBatSeq()

Apply ComBat-Seq batch effect correction method to SingleCellExperiment object

runBBKNN()

Apply BBKNN batch effect correction method to SingleCellExperiment object

runFastMNN()

Apply a fast version of the mutual nearest neighbors (MNN) batch effect correction method to SingleCellExperiment object

runLimmaBC()

Apply Limma's batch effect correction method to SingleCellExperiment object

runMNNCorrect()

Apply the mutual nearest neighbors (MNN) batch effect correction method to SingleCellExperiment object

runSCANORAMA()

Apply the mutual nearest neighbors (MNN) batch effect correction method to SingleCellExperiment object

runSCMerge()

Apply scMerge batch effect correction method to SingleCellExperiment object

seuratIntegration()

seuratIntegration A wrapper function to Seurat Batch-Correction/Integration workflow.

runZINBWaVE()

Apply ZINBWaVE Batch effect correction method to SingleCellExperiment object

plotBatchVariance()

Plot the percent of the variation that is explained by batch and condition in the data

Feature Selection

runFeatureSelection()

Wrapper function to run all of the feature selection methods integrated within the singleCellTK package including three methods from Seurat (`vst`, `mean.var.plot` or `dispersion`) and the Scran `modelGeneVar` method.

scranModelGeneVar()

scranModelGeneVar Generates and stores variability data from scran::modelGeneVar in the input singleCellExperiment object

seuratFindHVG()

seuratFindHVG Find highly variable genes and store in the input sce object

getTopHVG()

getTopHVG Extracts the top variable genes from an input SingleCellExperiment object. Note that the variability metrics must be computed using the `runFeatureSelection` method before extracting the feature names of the top variable features. If `altExp` parameter is a character value, this function will return the input SingleCellExperiment object with the subset containing only the top variable features stored as an altExp slot in returned object. However, if this parameter is set to NULL, only the names of the top variable features will be returned as a character vector.

seuratPlotHVG()

seuratPlotHVG Plot highly variable genes from input sce object (must have highly variable genes computations stored)

Dimensionality Reduction & Embedding

runDimReduce()

Generic Wrapper function for running dimensionality reduction

scaterPCA()

Perform PCA on a SingleCellExperiment Object A wrapper to runPCA function to compute principal component analysis (PCA) from a given SingleCellExperiment object.

getUMAP()

Uniform Manifold Approximation and Projection(UMAP) algorithm for dimension reduction.

getTSNE()

Run t-SNE dimensionality reduction method on a SingleCellExperiment Object

seuratICA()

seuratICA Computes ICA on the input sce object and stores the calculated independent components within the sce object

seuratPCA()

seuratPCA Computes PCA on the input sce object and stores the calculated principal components within the sce object

seuratRunUMAP()

seuratRunUMAP Computes UMAP from the given sce object and stores the UMAP computations back into the sce object

seuratRunTSNE()

seuratRunTSNE Computes tSNE from the given sce object and stores the tSNE computations back into the sce object

plotSCEDimReduceColData()

Dimension reduction plot tool for colData

plotSCEDimReduceFeatures()

Dimension reduction plot tool for assay data

Clustering

runScranSNN()

Get clustering with SNN graph

seuratFindClusters()

seuratFindClusters Computes the clusters from the input sce object and stores them back in sce object

runKMeans()

Get clustering with KMeans

Differential Expression

runDEAnalysis() runDESeq2() runLimmaDE() runANOVA() runMAST() runWilcox()

Perform differential expression analysis on SCE object

plotDEGVolcano()

Generate volcano plot for DEGs

plotDEGViolin()

Generate violin plot to show the expression of top DEGs

plotDEGRegression()

Create linear regression plot to show the expression the of top DEGs

plotDEGHeatmap()

Heatmap visualization of DEG result

plotMASTThresholdGenes()

MAST Identify adaptive thresholds

diffAbundanceFET()

Calculate Differential Abundance with FET

Find Marker

findMarkerDiffExp()

Find the marker gene set for each cluster With an input SingleCellExperiment object and specifying the clustering labels, this function iteratively call the differential expression analysis on each cluster against all the others.

findMarkerTopTable()

Fetch the table of top markers that pass the filtering

plotMarkerDiffExp() plotMarkerDiffExp()

Plot a heatmap to visualize the result of findMarkerDiffExp

Cell Type Labeling

runSingleR()

Label cell types with SingleR

Enrichment & Pathway Analysis

getMSigDBTable()

Shows MSigDB categories

enrichRSCE()

enrichR Given a list of genes this function runs the enrichR() to perform Gene enrichment

runGSVA()

Run GSVA analysis on a SingleCellExperiment object

runVAM()

Run VAM to score gene sets in single cell data

getPathwayResultNames()

List pathway analysis result names

plotPathway()

Generate violin plots for pathway analysis results

Seurat Curated Workflow

seuratComputeHeatmap()

seuratComputeHeatmap Computes the heatmap plot object from the pca slot in the input sce object

seuratComputeJackStraw()

seuratComputeJackStraw Compute jackstraw plot and store the computations in the input sce object

seuratElbowPlot()

seuratElbowPlot Computes the plot object for elbow plot from the pca slot in the input sce object

seuratFindClusters()

seuratFindClusters Computes the clusters from the input sce object and stores them back in sce object

seuratFindHVG()

seuratFindHVG Find highly variable genes and store in the input sce object

seuratFindMarkers()

seuratFindMarkers

seuratGenePlot()

Compute and plot visualizations for marker genes

seuratHeatmapPlot()

seuratHeatmapPlot Modifies the heatmap plot object so it contains specified number of heatmaps in a single plot

seuratICA()

seuratICA Computes ICA on the input sce object and stores the calculated independent components within the sce object

seuratIntegration()

seuratIntegration A wrapper function to Seurat Batch-Correction/Integration workflow.

seuratJackStrawPlot()

seuratJackStrawPlot Computes the plot object for jackstraw plot from the pca slot in the input sce object

seuratNormalizeData()

seuratNormalizeData Wrapper for NormalizeData() function from seurat library Normalizes the sce object according to the input parameters

seuratPCA()

seuratPCA Computes PCA on the input sce object and stores the calculated principal components within the sce object

seuratPlotHVG()

seuratPlotHVG Plot highly variable genes from input sce object (must have highly variable genes computations stored)

seuratReductionPlot()

seuratReductionPlot Plots the selected dimensionality reduction method

seuratReport()

Computes an HTML report from the Seurat workflow and returns the output SCE object with the computations stored in it.

seuratRunTSNE()

seuratRunTSNE Computes tSNE from the given sce object and stores the tSNE computations back into the sce object

seuratRunUMAP()

seuratRunUMAP Computes UMAP from the given sce object and stores the UMAP computations back into the sce object

seuratScaleData()

seuratScaleData Scales the input sce object according to the input parameters

seuratSCTransform()

seuratSCTransform Runs the SCTransform function to transform/normalize the input data

seuratVariableFeatures()

Get variable feature names after running seuratFindHVG function

computeHeatmap()

computeHeatmap The computeHeatmap method computes the heatmap visualization for a set of features against a set of dimensionality reduction components. This method uses the heatmap computation algorithm code from Seurat but plots the heatmap using ComplexHeatmap and cowplot libraries.

Visualization

plotBarcodeRankDropsResults()

Plots for runEmptyDrops outputs.

plotBarcodeRankScatter()

Plots for runBarcodeRankDrops outputs.

plotBatchCorrCompare()

Plot comparison of batch corrected result against original assay

plotBatchVariance()

Plot the percent of the variation that is explained by batch and condition in the data

plotBcdsResults()

Plots for runBcds outputs.

plotClusterAbundance()

Plot the differential Abundance

plotCxdsResults()

Plots for runCxds outputs.

plotDecontXResults()

Plots for runDecontX outputs.

plotDEGHeatmap()

Heatmap visualization of DEG result

plotDEGRegression()

Create linear regression plot to show the expression the of top DEGs

plotDEGViolin()

Generate violin plot to show the expression of top DEGs

plotDEGVolcano()

Generate volcano plot for DEGs

plotDimRed()

Plot dimensionality reduction from computed metrics including PCA, ICA, tSNE and UMAP

plotDoubletFinderResults()

Plots for runDoubletFinder outputs.

plotEmptyDropsResults()

Plots for runEmptyDrops outputs.

plotEmptyDropsScatter()

Plots for runEmptyDrops outputs.

plotMarkerDiffExp() plotMarkerDiffExp()

Plot a heatmap to visualize the result of findMarkerDiffExp

plotMASTThresholdGenes()

MAST Identify adaptive thresholds

plotPathway()

Generate violin plots for pathway analysis results

plotPCA()

Plot PCA run data from its components.

plotRunPerCellQCResults()

Plots for runPerCellQC outputs.

plotScDblFinderResults()

Plots for runScDblFinder outputs.

plotScdsHybridResults()

Plots for runCxdsBcdsHybrid outputs.

plotSCEBarAssayData()

Bar plot of assay data.

plotSCEBarColData()

Bar plot of colData.

plotSCEBatchFeatureMean()

Plot mean feature value in each batch of a SingleCellExperiment object

plotSCEDensity()

Density plot of any data stored in the SingleCellExperiment object.

plotSCEDensityAssayData()

Density plot of assay data.

plotSCEDensityColData()

Density plot of colData.

plotSCEDimReduceColData()

Dimension reduction plot tool for colData

plotSCEDimReduceFeatures()

Dimension reduction plot tool for assay data

plotSCEHeatmap() plotSCEDimReduceHeatmap()

Plot heatmap of using data stored in SingleCellExperiment Object

plotSCEScatter()

Dimension reduction plot tool for all types of data

plotSCEViolin()

Violin plot of any data stored in the SingleCellExperiment object.

plotSCEViolinAssayData()

Violin plot of assay data.

plotSCEViolinColData()

Violin plot of colData.

plotScrubletResults()

Plots for runScrublet outputs.

plotSoupXResults()

Plot SoupX Result

plotTopHVG()

Plot highly variable genes

plotTSNE()

Plot t-SNE plot on dimensionality reduction data run from t-SNE method.

plotUMAP()

Plot UMAP results either on already run results or run first and then plot.

Report Generation

reportCellQC()

Get runCellQC .html report

reportClusterAbundance()

Get plotClusterAbundance .html report

reportDiffAbundanceFET()

Get diffAbundanceFET .html report

reportDiffExp()

Get runDEAnalysis .html report

reportDropletQC()

Get runDropletQC .html report

reportFindMarker()

Get findMarkerDiffExp .html report

reportQCTool()

Get .html report of the output of the selected QC algorithm

Exporting Results

exportSCE()

Export data in SingleCellExperiment object

exportSCEtoAnnData()

Export a SingleCellExperiment R object as Python annData object

exportSCEtoFlatFile()

Export a SingleCellExperiment object to flat text files

exportSCEToSeurat()

Export data in Seurat object

Datasets

mouseBrainSubsetSCE

Example Single Cell RNA-Seq data in SingleCellExperiment Object, GSE60361 subset

sceBatches

Example Single Cell RNA-Seq data in SingleCellExperiment object, with different batches annotated

MitoGenes

List of mitochondrial genes of multiple reference

msigdb_table

MSigDB gene get Category table

scExample

Example Single Cell RNA-Seq data in SingleCellExperiment Object, subset of 10x public dataset https://support.10xgenomics.com/single-cell-gene-expression/datasets/2.1.0/pbmc4k A subset of 390 barcodes and top 200 genes were included in this example. Within 390 barcodes, 195 barcodes are empty droplet, 150 barcodes are cell barcode and 45 barcodes are doublets predicted by scrublet and doubletFinder package. This example only serves as a proof of concept and a tutoriol on how to run the functions in this package. The results should not be used for drawing scientific conclusions.

SEG

Stably Expressed Gene (SEG) list obect, with SEG sets for human and mouse.

Other Data Processing

expData()

expData Get data item from an input SingleCellExperiment object. The data item can be an assay, altExp (subset) or a reducedDim, which is retrieved based on the name of the data item.

`expData<-`()

expData Store data items using tags to identify the type of data item stored. To be used as a replacement for assay<- setter function but with additional parameter to set a tag to a data item.

expDataNames()

expDataNames Get names of all the data items in the input SingleCellExperiment object including assays, altExps and reducedDims.

expDeleteDataTag()

expDeleteDataTag Remove tag against an input data from the stored tag information in the metadata of the input object.

expSetDataTag()

expSetDataTag Set tag to an assay or a data item in the input SCE object.

expTaggedData()

expTaggedData Returns a list of names of data items from the input SingleCellExperiment object based upon the input parameters.

combineSCE()

Combine a list of SingleCellExperiment objects as one SingleCellExperiment object

convertSCEToSeurat()

convertSCEToSeurat Converts sce object to seurat while retaining all assays and metadata

convertSeuratToSCE()

convertSeuratToSCE Converts the input seurat object to a sce object

dedupRowNames()

Deduplicate the rownames of a matrix or SingleCellExperiment object Adds '-1', '-2', ... '-i' to multiple duplicated rownames, and in place replace the unique rownames, store unique rownames in rowData, or return the unique rownames as character vecetor.

detectCellOutlier()

Detecting outliers within the SingleCellExperiment object.

featureIndex()

Retrieve row index for a set of features

getGenesetNamesFromCollection()

List geneset names from geneSetCollection

retrieveSCEIndex()

Retrieve cell/feature index by giving identifiers saved in col/rowData

sampleSummaryStats()

Generate table of SCTK QC outputs.

sctkListGeneSetCollections()

Lists imported GeneSetCollections

setSCTKDisplayRow()

Indicates which rowData to use for visualization

subsetSCECols()

Subset a SingleCellExperiment object by columns

subsetSCERows()

Subset a SingleCellExperiment object by rows

Python Environment Setting

sctkPythonInstallConda()

Installs Python packages into a Conda environment

selectSCTKConda()

Selects a Conda environment

sctkPythonInstallVirtualEnv()

Installs Python packages into a virtual environment

selectSCTKVirtualEnvironment()

Selects a virtual environment