OverWrite Letters (e.g. SNPs) in an XStringSet
owl(seq, snps, ...)
# S4 method for XStringSet,GRanges
owl(seq, snps, alt_col = "ALT", ...)
# S4 method for BSgenome,GRanges
owl(seq, snps, alt_col = "ALT", names, ...)
A BSgenome, DNAStringSet, RNAStringSet or other XStringSet.
A GRanges object with SNP positions and a column containing the alternate allele
Passed to Biostrings::replaceLetterAt()
Column name in the mcols element of snps
containing the
alternate allele
Sequence names to operate on
An object of the same class as the original object, but with SNPs inserted at the supplied positions
This is a lower-level function called by transmogrify()
and
genomogrify()
, but able to be called by the user if needed
Note that when providing a BSgenome object, this will first be coerced to a DNAStringSet which can be time consuming.
seq <- DNAStringSet(c(chr1 = "AAGC"))
snps <- GRanges("chr1:2")
snps$ALT <- "G"
snps
#> GRanges object with 1 range and 1 metadata column:
#> seqnames ranges strand | ALT
#> <Rle> <IRanges> <Rle> | <character>
#> [1] chr1 2 * | G
#> -------
#> seqinfo: 1 sequence from an unspecified genome; no seqlengths
seq
#> DNAStringSet object of length 1:
#> width seq names
#> [1] 4 AAGC chr1
owl(seq, snps)
#> DNAStringSet object of length 1:
#> width seq names
#> [1] 4 AGGC chr1