diff --git a/DESCRIPTION b/DESCRIPTION index 0df96f7..92d0fbd 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: crisprScore -Version: 1.9.2 -Date: 2024-07-28 +Version: 1.9.3 +Date: 2024-10-03 Title: On-Target and Off-Target Scoring Algorithms for CRISPR gRNAs Authors@R: c( person("Jean-Philippe", "Fortin", email = "fortin946@gmail.com", role = c("aut", "cre", "cph")), @@ -41,7 +41,7 @@ Description: Note that DeepHF, DeepCpf1 and enPAM+GB are not available on Windows machines. License: MIT + file LICENSE Encoding: UTF-8 -RoxygenNote: 7.2.1 +RoxygenNote: 7.3.2 VignetteBuilder: knitr StagedInstall: no BugReports: https://github.com/crisprVerse/crisprScore diff --git a/R/getDeepCpf1Scores.R b/R/getDeepCpf1Scores.R index a1d0440..4e6a257 100644 --- a/R/getDeepCpf1Scores.R +++ b/R/getDeepCpf1Scores.R @@ -10,7 +10,7 @@ #' #' @details The input sequences for DeepCpf1 scoring require 4 nucleotides #' upstream of the protospacer sequence, the protospacer sequence -#' itself (4bp PAM sequence + 23bp spacer sequence) and 3 nucleootides +#' itself (4bp PAM sequence + 23bp spacer sequence) and 3 nucleotides #' downstream of the protospacer sequence, for a total of 34 nucleotides. #' If \code{convertPAM} is set to \code{TRUE}, any non-canonical PAM #' sequence will be convert to TTTC for scoring purposes. @@ -28,10 +28,10 @@ #' #' @examples #' if (interactive()){ -#' flank5 <- "ACC" #3bp +#' flank5 <- "ACCG" #4bp #' pam <- "TTTT" #4bp #' spacer <- "AATCGATGCTGATGCTAGATATT" #23bp -#' flank3 <- "AAGT" #4bp +#' flank3 <- "AAG" #4bp #' input <- paste0(flank5, pam, spacer, flank3) #' results <- getDeepCpf1Scores(input) #' } diff --git a/inst/NEWS.Rd b/inst/NEWS.Rd index 86152cb..221711e 100644 --- a/inst/NEWS.Rd +++ b/inst/NEWS.Rd @@ -3,6 +3,11 @@ \encoding{UTF-8} +\section{Version 1.9.3}{\itemize{ +\item Fixed documentation for enPamGB and DeepCpf1 algorithms. +}} + + \section{Version 1.9.2}{\itemize{ \item Fixed python environments based on the lastest changes in basilisk (using conda-forge installations). }} diff --git a/inst/roster/roster.pptx b/inst/roster/roster.pptx new file mode 100644 index 0000000..4df0892 Binary files /dev/null and b/inst/roster/roster.pptx differ diff --git a/man/getDeepCpf1Scores.Rd b/man/getDeepCpf1Scores.Rd index c4d6307..b42ebca 100644 --- a/man/getDeepCpf1Scores.Rd +++ b/man/getDeepCpf1Scores.Rd @@ -29,17 +29,17 @@ Calculate on-target sgRNA activity scores for \details{ The input sequences for DeepCpf1 scoring require 4 nucleotides upstream of the protospacer sequence, the protospacer sequence - itself (4bp PAM sequence + 23bp spacer sequence) and 3 nucleootides + itself (4bp PAM sequence + 23bp spacer sequence) and 3 nucleotides downstream of the protospacer sequence, for a total of 34 nucleotides. If \code{convertPAM} is set to \code{TRUE}, any non-canonical PAM sequence will be convert to TTTC for scoring purposes. } \examples{ if (interactive()){ -flank5 <- "ACC" #3bp +flank5 <- "ACCG" #4bp pam <- "TTTT" #4bp spacer <- "AATCGATGCTGATGCTAGATATT" #23bp -flank3 <- "AAGT" #4bp +flank3 <- "AAG" #4bp input <- paste0(flank5, pam, spacer, flank3) results <- getDeepCpf1Scores(input) } diff --git a/vignettes/crisprScore.Rmd b/vignettes/crisprScore.Rmd index 5144a1c..90d55ed 100644 --- a/vignettes/crisprScore.Rmd +++ b/vignettes/crisprScore.Rmd @@ -357,15 +357,15 @@ knitr::include_graphics("./figures/sequences_cas12a.svg") The DeepCpf1 algorithm is an on-target cutting efficiency prediction algorithm for the Cas12a nuclease [@deepcpf1] using a convolutional neural network (CNN) framework. It generates a score between 0 and 1 to quantify the likelihood of -Cas12a to cut for a given sgRNA. 3 nucleotides upstream and 4 nucleotides -downstream of the PAM sequence are needed for scoring: +Cas12a to cut for a given sgRNA. 4 nucleotides upstream of the PAM sequence, and 3 nucleotides +downstream of the protospacer sequence are needed for scoring: ```{r, eval=FALSE} -flank5 <- "ACC" #3bp +flank5 <- "ACCA" #4bp pam <- "TTTT" #4bp spacer <- "AATCGATGCTGATGCTAGATATT" #23bp -flank3 <- "AAGT" #4bp +flank3 <- "AAG" #3bp input <- paste0(flank5, pam, spacer, flank3) results <- getDeepCpf1Scores(input) ``` @@ -378,14 +378,16 @@ for the enhanced Cas12a (enCas12a) nuclease [@enpamgb] using a gradient-booster comparison to the wildtype Cas12 nuclease [@encas12a], and the enPAM+GB algorithm takes PAM activity into account in the calculation of the final score. It generates a probability (therefore a score between 0 and 1) of a given sgRNA -to cut at the intended target. 3 nucleotides upstream of the PAM sequence and 4 nucleotides downstream of the protospacer sequence are needed for scoring: +to cut at the intended target. 4 nucleotides upstream of the PAM +sequence, and 3 nucleotides downstream of the protospacer +sequence are needed for scoring: ```{r, eval=FALSE} -flank5 <- "ACC" #3bp +flank5 <- "ACCG" #4bp pam <- "TTTT" #4bp spacer <- "AATCGATGCTGATGCTAGATATT" #23bp -flank3 <- "AAGT" #4bp +flank3 <- "AAG" #3bp input <- paste0(flank5, pam, spacer, flank3) results <- getEnPAMGBScores(input) ``` diff --git a/vignettes/figures/sequences_cas12a.pdf b/vignettes/figures/sequences_cas12a.pdf index 193031a..4bc3402 100644 Binary files a/vignettes/figures/sequences_cas12a.pdf and b/vignettes/figures/sequences_cas12a.pdf differ diff --git a/vignettes/figures/sequences_cas12a.pptx b/vignettes/figures/sequences_cas12a.pptx index 13cf098..f4ba458 100644 Binary files a/vignettes/figures/sequences_cas12a.pptx and b/vignettes/figures/sequences_cas12a.pptx differ diff --git a/vignettes/figures/sequences_cas12a.svg b/vignettes/figures/sequences_cas12a.svg index 8a09d20..bfb1491 100644 --- a/vignettes/figures/sequences_cas12a.svg +++ b/vignettes/figures/sequences_cas12a.svg @@ -1,328 +1,506 @@ + + image/svg+xmlTTTTAGGCTTGCAAACTCTCGCTTTACTACAGGCTTGCAAACTCTCGCTPAM siteCCut site5’TACA3’GTAGPAM siteCut site5’3’GTAGTTTTATTAGGCTTGCAAACTCTCGCTGGCTTGCAAACTCTCGCTCCTACATACAGTGTAGTAGGTAGTTTTATTAGGCTTGCAAACTCTCGCTGGCTTGCAAACTCTCGCTCCTACATACAGTGTA27nt27nt33nt34nt33nt34ntDeepCpf1DeepCpf1enPAM+GBenPAM+GB(Protospacer)(Protospacer)Spacer (23nt)Spacer (23nt)PAM (4nt) + id="tspan424">PAM (4nt)