RECODE - resolution of the curse of dimensionality in single-cell data analysis


License
MIT
Install
pip install screcode==0.1.0.dev202110080833

Documentation

RECODE - Resolution of the curse of dimensionality

Resolution of the curse of dimensionality (RECODE) is a noise reduction method for single-cell sequencing data based on high-dimensional statistics.

Y. Imoto, T. Nakamura, et al. Resolution of the curse of dimensionality in single-cell RNA sequencing data analysis, 2022, Life Science Alliance.

Y. Imoto. Comprehensive Noise Reduction in Single-Cell Data with the RECODE Platform, 2024, bioRxiv.

The license gives permission for personal, academic, or educational use. Any commercial use is strictly prohibited. Please contact imoto.yusuke.4e@kyoto-u.ac.jp for licensing terms for any commercial use.


Table of Contents


Overview

  • Input is single-cell sequencing data (count matrix) $X \in \mathbb{Z}_{\geq 0}^{n\times d}$, where $n$ is the number of sample, $d$ is the number of features. For exmple, for scRNA-seq data, $n$ and $d$ correspond to the number of cells and genes, respectively.
  • Compute the denoised data $X \in \mathbb{R}_{\geq 0}^{n\times d}$ with the same scale with $X$.
  • Compute the applicability of RECODE, classified strongly applicable, weekly applicable, and inapplicable, denoting the level of accuracy of noise reduction.

Python code

Installation

To install RECODE package, use pip as follows:

$ pip install screcode

PyPi downloads (by PePy)

Week Month Total

Documentation and Tutorial

Tutorials and API reference

Requirements

  • Python3
  • numpy
  • scipy
  • scikit-learn

R code

Remark: The current version of the R code is not fast because of the lower speed of the PCA algorithm on R. So, we recommend using the Python code or R code with Python calling (below) for large-scale data.

Installation

You can install RECODE on R with:

devtools::install_github("yusuke-imoto-lab/RECODE/R")

Tutorials

For the single-cell sequeincing data X (rows: genes/epigenomes, columns: cells), we can apply RECODE as follows.

library(RECODE)

X.RECODE <- RECODE(X)

In the Seurat analysis, we can apply RECODE to SeuratObject and set it as default, as follows:

library(RECODE)
library(Matrix)

data <- as.matrix(seurat[["RNA"]]@counts)
data_RECODE <- RECODE(data)
seurat[["RECODE"]] <- CreateAssayObject(counts = Matrix(data_RECODE, sparse = TRUE))
DefaultAssay(seurat) <- "RECODE"

For a detailed analysis, please see below:

Tutorial (Run)

Tutorial (Run, QC, Clustering, Annotating etc.)


R code (Python calling)

Installation

After installing remotes (install.packages("remotes")), you can install "recodeinstaller" with the following command:

remotes::install_github("yusuke-imoto-lab/recodeinstaller")

Then, the following command installs the Python version of RECODE.

library(recodeinstaller)

install_screcode()

Regarding the detail of installer, please see recodeinstaller.

Tutorials

For the single-cell sequeincing data X (rows: genes/epigenomes, columns: cells), we can apply RECODE as follows.

library(reticulate)

source("recodeloader/load_recodeenv.R")

plt <- reticulate::import(module="matplotlib.pyplot")
screcode <- reticulate::import(module="screcode.screcode")
X.RECODE<-screcode$RECODE(X)

Below is a more detailed analysis:

Tutorial (Python calling)


Desktop Application

Installation and Tutorials

Windows (exe) and MAC OS (dmg) applications are avairable.


License

MIT © 2022 Yusuke Imoto

The license gives permission for personal, academic, or educational use. Any commercial use is strictly prohibited. Please contact imoto.yusuke.4e@kyoto-u.ac.jp for licensing terms for any commercial use.


Contact