本文へ移動
cccskills
無料GitHub で公開

bioconductor-crisprbase

Provides S4 classes for general nucleases, CRISPR nucleases, CRISPR nickases, and base editors.Several CRISPR-specific genome arithmetic functions are implemented to help extract genomic coordinates of spacer and protospacer sequences. Commonly-used CRISPR nuclease objects are provided that can be readily used in other packages. Both DNA- and RNA-targeting nucleases are supported.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md5.9 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

crisprBase

Workflows

Standard Workflow

Define and manipulate S4 classes representing restriction enzymes, CRISPR nucleases, base editors, and nickases.

library(crisprBase)

# 1. Define SpCas9 Nuclease (3' PAM)
SpCas9 <- CrisprNuclease(
  "SpCas9", 
  targetType = "DNA",
  pams = c("(3/3)NGG", "(3/3)NAG", "(3/3)NGA"),
  weights = c(1, 0.2593, 0.0694),
  pam_side = "3prime", 
  spacer_length = 20
)

# 2. Define AsCas12a Nuclease (5' PAM)
AsCas12a <- CrisprNuclease(
  "AsCas12a", 
  targetType = "DNA",
  pams = "TTTV(18/23)",
  pam_side = "5prime", 
  spacer_length = 23
)

# 3. Define a Cytosine Base Editor (BE4max) with custom editing weights
weightsFile <- system.file("be/b4max.csv", package = "crisprBase", mustWork = TRUE)
ws <- t(read.csv(weightsFile))
ws <- as.data.frame(ws)
colnames(ws) <- ws["Position", ]
ws <- ws[-c(match("Position", rownames(ws))), , drop = FALSE]
ws <- as.matrix(ws)

BE4max <- BaseEditor(
  SpCas9, 
  baseEditorName = "BE4max",
  editingStrand = "original", 
  editingWeights = ws, 
  scale = TRUE
)

# 4. Define CRISPR Nickases (Cas9D10A)
Cas9D10A <- CrisprNickase(
  "Cas9D10A", 
  nickingStrand = "opposite", 
  pams = c("(3)NGG", "(3)NAG", "(3)NGA"),
  weights = c(1, 0.2593, 0.0694),
  pam_side = "3prime", 
  spacer_length = 20
)

Note on inputs/outputs: Input is nuclease specifications and weight files; output is S4 objects representing custom CRISPR nucleases, base editors, and nickases.

When to Use

  • Nuclease Representation: Represent CRISPR nucleases (e.g., SpCas9, SaCas9, AsCas12a) and restriction enzymes (e.g., EcoRI, HgaI) using S4 classes CrisprNuclease and Nuclease.
  • Genomic Range Extraction: Extract genomic coordinates of PAM, protospacer, and target sequences using getPamRanges, getProtospacerRanges, and getTargetRanges.
  • Base Editor Modeling: Represent base editors (e.g., BE4max) with custom editing weights using BaseEditor.
  • CRISPR Nickase Modeling: Represent CRISPR nickases (e.g., Cas9D10A, Cas9H840A) that create single-strand breaks using CrisprNickase.
  • Sequence Extraction: Extract protospacer and PAM sequences from target sequences using extractProtospacerFromTarget and extractPamFromTarget.

When NOT to Use

  • Full Guide RNA Design: For comprehensive guide RNA design, off-target search, or genomic alignment, use higher-level packages in the crisprVerse ecosystem (like crisprDesign) rather than the low-level representation classes in crisprBase.
  • General Genomic Arithmetic: For general genomic arithmetic unrelated to CRISPR spacer/PAM coordinates, use standard GenomicRanges functions directly.

Data Requirements

  • Target Sequences: Character vectors of target sequences (protospacer + PAM) or genomic coordinates (chromosome, PAM site, strand).
  • Example Structure:
    targets <- c("AGGTGCTGATTGTAGTGCTGCGG", "AGGTGCTGATTGTAGTGCTGAGG")
    chr <- rep("chr7", 2)
    pam_site <- rep(200, 2)
    strand <- c("+", "-")
    

Key Parameters

  • nucleaseName: A string specifying the name of the nuclease.
  • targetType: Specifies if the nuclease targets "DNA" or "RNA".
  • pams: Character vector of PAM sequences recognized by the nuclease.
  • pam_side: Side of the PAM sequence relative to the protospacer ("5prime" or "3prime").
  • spacer_length: Default spacer length (e.g., 20 for SpCas9).
  • nickingStrand: Strand cleaved by a nickase ("original" or "opposite").
  • editingStrand: Strand where editing happens with respect to the target protospacer ("original" or "opposite").
  • scale (TRUE): Logical indicating whether to scale editing weights between 0 and 1.

Best Practices

  • Rebase Convention: Use the Rebase convention to represent motif sequences (e.g., adding ^ to specify the cleavage site).
  • Expand Motifs: Use expand = TRUE in motifs() to expand IUPAC nucleotide codes into all valid combinations of A/C/G/T.
  • Cut Site Extraction: Use cutSites() to extract cut site coordinates relative to the PAM site to ensure correct genomic coordinate mapping.
  • Scale Editing Weights: Scale custom editing weights using scale = TRUE in BaseEditor to ensure they are normalized between 0 and 1.

Common Pitfalls

  • Confusing Spacer and Protospacer Sequences: Remember that for RNA-targeting nucleases (like Cas13d), the spacer sequence is the reverse complement of the protospacer sequence, whereas for DNA-targeting nucleases they are identical.
  • Incorrect Row Names in Base Editor Weight Matrices: Ensure row names correspond exactly to nucleotide substitutions (e.g., "C2T", "G2A") and column names correspond to relative positions with respect to the PAM site.

Alternatives

  • crisprDesign: For comprehensive gRNA design, annotation, and off-target analysis.
  • Biostrings: For general biological sequence manipulation and motif matching without CRISPR-specific S4 classes.

Citations

  • Arbab et al. 2020, Cell (Base editing outcomes and weights)
  • Komor et al. 2016, Nature (Cytosine base editors)
  • Roberts et al. 2010, Nucleic Acids Research (REBASE database)

References

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

The package contains functions for exploratory oligonucleotide array analysis. The dependence on tkWidgets only concerns few convenience functions. 'affy' is fully functional without it.

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

This tool uses the label-tree function from HyPhy to annotate a phylogenetic tree. It allows users to select a subset of leaves using either a regular expression or a list of sequence names, and then apply a specified label to these selecte

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

This package provides a client for the Bioconductor AnnotationHub web resource. The AnnotationHub web resource provides a central location where genomic files (e.g., VCF, bed, wig) and other resources from standard locations (e.g., UCSC, En

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

apeglm provides Bayesian shrinkage estimators for effect sizes for a variety of GLM models, using approximation of the posterior for individual coefficients.

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

ASURAT is a software for single-cell data analysis. Using ASURAT, one can simultaneously perform unsupervised clustering and biological interpretation in terms of cell type, disease, biological process, and signaling pathway activity. Inputting a single-cell RNA-seq data and knowledge-based databases, such as Cell Ontology, Gene Ontology, KEGG, etc., ASURAT transforms gene expression tables into original multivariate tables, termed sign-by-sample matrices (SSMs).

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

AUCell allows to identify cells with active gene sets (e.g. signatures, gene modules...) in single-cell RNA-seq data. AUCell uses the "Area Under the Curve" (AUC) to calculate whether a critical subset of the input gene set is enriched with

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

bioMate-AI のスキルをすべて見る

このスキルの問題を報告する