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.

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

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

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.

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

plotSCEDimReduceColData()

Dimension reduction plot tool for colData

plotSCEDimReduceFeatures()

Dimension reduction plot tool for assay data

Clustering

runScranSNN()

Get clustering with SNN graph

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

runEnrichR()

Run EnrichR on SCE object

`getEnrichRResult<-`() getEnrichRResult()

Get or Set EnrichR Result

getMSigDBTable()

Shows MSigDB categories

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

runSeuratFindClusters()

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

runSeuratFindHVG()

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

runSeuratFindMarkers()

runSeuratFindMarkers

runSeuratHeatmap()

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

runSeuratICA()

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

runSeuratIntegration()

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

runSeuratJackStraw()

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

runSeuratNormalizeData()

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

runSeuratPCA()

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

runSeuratScaleData()

runSeuratScaleData Scales the input sce object according to the input parameters

runSeuratSCTransform()

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

runSeuratTSNE()

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

runSeuratUMAP()

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

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.

reportSeurat()

Generates an HTML report for the complete Seurat workflow and returns the SCE object with the results computed and stored inside the object.

reportSeuratClustering()

Generates an HTML report for Seurat Clustering and returns the SCE object with the results computed and stored inside the object.

reportSeuratDimRed()

Generates an HTML report for Seurat Dimensionality Reduction and returns the SCE object with the results computed and stored inside the object.

reportSeuratFeatureSelection()

Generates an HTML report for Seurat Feature Selection and returns the SCE object with the results computed and stored inside the object.

reportSeuratMarkerSelection()

Generates an HTML report for Seurat Results (including Clustering & Marker Selection) and returns the SCE object with the results computed and stored inside the object.

reportSeuratNormalization()

Generates an HTML report for Seurat Normalization and returns the SCE object with the results computed and stored inside the object.

reportSeuratResults()

Generates an HTML report for Seurat Results (including Clustering & Marker Selection) and returns the SCE object with the results computed and stored inside the object.

reportSeuratRun()

Generates an HTML report for Seurat Run (including Normalization, Feature Selection, Dimensionality Reduction & Clustering) and returns the SCE object with the results computed and stored inside the object.

reportSeuratScaling()

Generates an HTML report for Seurat Scaling and returns the SCE object with the results computed and stored inside the object.

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

plotClusterPseudo()

Run plotClusterPseudo function to plot TSCAN-derived pseudotimes around cluster in the dataset.

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.

plotSeuratElbow()

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

plotSeuratGenes()

Compute and plot visualizations for marker genes

plotSeuratHeatmap()

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

plotSeuratHVG()

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

plotSeuratJackStraw()

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

plotSeuratReduction()

plotSeuratReduction Plots the selected dimensionality reduction method

plotSoupXResults()

Plot SoupX Result

plotTopHVG()

Plot highly variable genes

plotTSCANDEgenes()

Run plotTSCANDEgenes function to plot cells colored by the expression of a gene of interest

plotTSCANPseudotimeGenes()

Run plotTSCANPseudotimeGenes function to plot genes with significant changes

plotTSCANPseudotimeHeatmap()

Run plotTSCANPseudotimeHeatmap function to plot heatmap for top genes

plotTSCANResults()

Plot MST pseudotime values for cells

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

reportSeurat()

Generates an HTML report for the complete Seurat workflow and returns the SCE object with the results computed and stored inside the object.

reportSeuratClustering()

Generates an HTML report for Seurat Clustering and returns the SCE object with the results computed and stored inside the object.

reportSeuratDimRed()

Generates an HTML report for Seurat Dimensionality Reduction and returns the SCE object with the results computed and stored inside the object.

reportSeuratFeatureSelection()

Generates an HTML report for Seurat Feature Selection and returns the SCE object with the results computed and stored inside the object.

reportSeuratMarkerSelection()

Generates an HTML report for Seurat Results (including Clustering & Marker Selection) and returns the SCE object with the results computed and stored inside the object.

reportSeuratNormalization()

Generates an HTML report for Seurat Normalization and returns the SCE object with the results computed and stored inside the object.

reportSeuratResults()

Generates an HTML report for Seurat Results (including Clustering & Marker Selection) and returns the SCE object with the results computed and stored inside the object.

reportSeuratRun()

Generates an HTML report for Seurat Run (including Normalization, Feature Selection, Dimensionality Reduction & Clustering) and returns the SCE object with the results computed and stored inside the object.

reportSeuratScaling()

Generates an HTML report for Seurat Scaling and returns the SCE object with the results computed and stored inside the object.

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