Add mcols 'off' (offtargets), 'off0' (0-mismatch offtargets), etc.

add_specificity(...)

add_offtargets(
  spacers,
  bsgenome,
  targets = NULL,
  mismatches = 2,
  pam = "NGG",
  outdir = OUTDIR,
  indexedgenomesdir = INDEXEDGENOMESDIR,
  plot = TRUE,
  size_var = default_size_var(spacers),
  alpha_var = "off",
  verbose = TRUE
)

Arguments

...

to channel deprecated add_specificity to add_offtargets

spacers

spacer GRanges-class

bsgenome

BSgenome-class

targets

NULL (default) or target GRanges-class

mismatches

number (default 2): max number of mismatches to consider

pam

string (default 'NGG'): pam sequence

outdir

directory where output is written to

indexedgenomesdir

string: dir with indexed genomes

plot

TRUE (default) or FALSE

size_var

string: mapped to size in plot

alpha_var

string: mapped to alpha in plot

verbose

TRUE (default) or FALSE

Value

filtered spacer GRanges-class

Details

For NULL targets: offtarget counts = (G0- 1) + G1 + ... Non-NULL targets: offtarget counts = (G0-T0) + (G1-T1) + ...

Examples

# PE example #----------- require(magrittr) bsgenome <- BSgenome.Hsapiens.UCSC.hg38::BSgenome.Hsapiens.UCSC.hg38 gr <- char_to_granges(c(PRNP = 'chr20:4699600:+', # snp HBB = 'chr11:5227002:-', # snp HEXA = 'chr15:72346580-72346583:-', # del CFTR = 'chr7:117559593-117559595:+'), # ins bsgenome) spacers <- find_pe_spacers(gr, bsgenome)
# index_genome(bsgenome) # add_offtargets(spacers, bsgenome, mismatches=0) # add_offtargets(spacers, bsgenome, mismatches=2) # TFBS example #------------- bsgenome <- BSgenome.Mmusculus.UCSC.mm10::BSgenome.Mmusculus.UCSC.mm10 bedfile <- system.file('extdata/SRF.bed', package = 'multicrispr') targets <- extend(bed_to_granges(bedfile, genome = 'mm10'))
#> Read SRF.bed into GRanges
#> 1974 ranges on 21 chromosomes
spacers <- find_spacers(targets, bsgenome)
#> 3948 ranges after adding inverse strands
# index_genome(bsgenome) # spacers %>% add_offtargets(bsgenome) # off = G - 1 # spacers %>% add_offtargets(bsgenome, targets) # off = G - T