GitHub - thecailab/SCRIP (original) (raw)
SCRIP
SCRIP: an accurate simulator for single-cell RNA sequencing data
Author
Fei Qin, Xizhi Luo, Feifei Xiao, Guoshuai Cai
Description
SCRIP provides a flexible Gamma-Poisson mixture and a Beta-Gamma-Poisson mixture framework to simulate scRNA-seq data. SCRIP package was built based on the framework of splatter. Both Gamma-Poisson and Beta-Poisson distribution model the over dispersion of scRNA-seq data. Specifically, Beta-Poisson model was used to model bursting effect. The dispersion was accurately simulated by fitting the mean-BCV dependency using generalized additive model (GAM). Other key characteristics of scRNA-seq data including library size, zero inflation and outliers were also modeled by SCRIP. With its flexible modeling, SCIRP enables various application for different experimental designs and goals including DE analysis, clustering analysis, trajectory-based analysis and bursting analysis.
Detailed documentation of usage, examples and intepretation can be found in https://github.com/thecailab/SCRIP/blob/main/vignettes/SCRIPsimu.pdf
Installation
install.packages("devtools") library(devtools) BiocManager::install("splatter") install_github("thecailab/SCRIP")
Running SCRIP
Examples
library(splatter) library(SCRIP) library(Biobase)
EMTAB.eset <- EMTABesethealthy expre_data = exprs(EMTAB.eset) pheno_data = pData(EMTAB.eset)
dim(expre_data) [1] 25453 1097
expre_data[1:6,1:6] AZ_A10 AZ_A11 AZ_A12 AZ_A2 AZ_A5 AZ_A6 SGIP1 0 0 0 32 0 0 AZIN2 0 0 0 0 0 0 CLIC4 3 0 0 1 0 0 AGBL4 0 0 0 0 0 0 NECAP2 0 0 0 0 0 0 SLC45A1 0 0 0 0 0 0
head(pheno_data) sampleID SubjectName cellTypeID cellType AZ_A10 1 Non T2D 1 5 delta AZ_A11 1 Non T2D 1 2 alpha AZ_A12 1 Non T2D 1 5 delta AZ_A2 1 Non T2D 1 9 gamma AZ_A5 1 Non T2D 1 6 ductal AZ_A6 1 Non T2D 1 2 alpha
To simplify computation here, only acinar celltype in sample 5 was utilized here.
sub_expre_data=expre_data[,which((pheno_data$sampleID %in% c(5)) & (pheno_data[,4] == "acinar"))] params <- splatEstimate(sub_expre_data) sim_trend <- SCRIPsimu(data=sub_expre_data, params=params, mode="GP-trendedBCV")
sim_trend class: SingleCellExperiment dim: 25453 80 metadata(16): Params CT.index ... batch.facScale bcv.shrink assays(5): BatchCellMeans BaseCellMeans CellMeans TrueCounts counts rownames(25453): Gene1 Gene2 ... Gene25452 Gene25453 rowData names(4): Gene BaseGeneMean OutlierFactor GeneMean colnames(80): Cell1 Cell2 ... Cell79 Cell80 colData names(3): Cell Batch ExpLibSize reducedDimNames(0): altExpNames(0):
Citation
Qin, Fei, Xizhi Luo, Feifei Xiao, and Guoshuai Cai. "SCRIP: an accurate simulator for single-cell RNA sequencing data." Bioinformatics 38, no. 5 (2022): 1304-1311.