본문으로 건너뛰기
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

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

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-kb7932026년 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-kb7932026년 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-kb7932026년 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-kb7932026년 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-kb7932026년 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-kb7932026년 6월 21일 업데이트

bioMate-AI의 스킬 모두 보기

이 스킬의 문제 신고