Description
CRISPR Pooled Screen Analysis using Beta-Binomial Test.
Description
Provides functions for hit gene identification and quantification of sgRNA (single-guided RNA) abundances for CRISPR (Clustered Regularly Interspaced Short Palindromic Repeats) pooled screen data analysis. Details are in Jeong et al. (2019) <doi:10.1101/gr.245571.118> and Baggerly et al. (2003) <doi:10.1093/bioinformatics/btg173>.
README.md
CB2
CB2(CRISPRBetaBinomial) is a new algorithm for analyzing CRISPR data based on beta-binomial distribution. We provide CB2 as a R package, and the interal algorithms of CB2 are also implemented in CRISPRCloud.
Update
May 26, 2020
- Regarding #9, CB2 now provides logFC of gene-level analysis with two different modes. The default option is the same as the previous version, and setting
logFC
parameter value ofmeasure_gene_stats
togene
will provide thelogFC
calculate by gene-level CPMs.
April 14, 2020
- Regarding #6, now users can use
join_count_and_design
function.
December 16, 2019
- Regarding #4, CB2 now supports gzipped FASTQ file.
- Regarding #5,
calc_mappability()
providetotal_reads
andmapped_reads
columns.
July 2, 2019
There are several updates.
- We have change the function name for the sgRNA-level test to
measure_sgrna_stats
. The original namerun_estimation
has been deprecated. - CB2 now supports a
data.frame
with character columns. In other words, you can use
How to install
Currently CB2 is now on CRAN
, and you can install it using install.package
function.
install.package("CB2")
Installation Github version of CB2 can be done using the following lines of code in your R terminal.
install.packages("devtools")
devtools::install_github("LiuzLab/CB2")
Alternatively, here is a one-liner command line for the installation.
Rscript -e "install.packages('devtools'); devtools::install_github('LiuzLab/CB2')"
A simple example how to use CB2 in R
FASTA <- system.file("extdata", "toydata",
"small_sample.fasta",
package = "CB2")
df_design <- data.frame()
for(g in c("Low", "High", "Base")) {
for(i in 1:2) {
FASTQ <- system.file("extdata", "toydata",
sprintf("%s%d.fastq", g, i),
package = "CB2")
df_design <- rbind(df_design,
data.frame(
group = g,
sample_name = sprintf("%s%d", g, i),
fastq_path = FASTQ,
stringsAsFactors = F)
)
}
}
MAP_FILE <- system.file("extdata", "toydata", "sg2gene.csv", package="CB2")
sgrna_count <- run_sgrna_quant(FASTA, df_design, MAP_FILE)
sgrna_stat <- measure_sgrna_stats(sgrna_count$count, df_design,
"Base", "Low",
ge_id = "gene",
sg_id = "id")
gene_stat <- measure_gene_stats(sgrna_stat)
Or you could run the example with the following commented code.
sgrna_count <- run_sgrna_quant(FASTA, df_design)
sgrna_stat <- measure_sgrna_stats(sgrna_count$count, df_design, "Base", "Low")
gene_stat <- measure_gene_stats(sgrna_stat)
More detailed tutorial is available here!