| shmulateSeq {shazam} | R Documentation |
Simulate mutations in a single sequence
Description
Generates random mutations in a sequence iteratively using a targeting model. Targeting probabilities at each position are updated after each iteration.
Usage
shmulateSeq(
sequence,
numMutations,
targetingModel = HH_S5F,
start = 1,
end = nchar(sequence),
frequency = FALSE
)
Arguments
sequence |
sequence string in which mutations are to be introduced.
Accepted alphabet: |
numMutations |
a whole number indicating the number of mutations to be
introduced into |
targetingModel |
5-mer TargetingModel object to be used for computing probabilities of mutations at each position. Defaults to HH_S5F. |
start |
Initial position in |
end |
Last position in |
frequency |
If |
Details
If the input sequence has a non-triplet overhang at the end, it will be trimmed
to the last codon. For example, ATGCATGC will be trimmed to ATGCAT.
Mutations are not introduced to positions in the input sequence that contain
. or N.
With frequency=TRUE, the number of mutations introduced is the floor of
the length of the sequence multiplied by the mutation frequency specified via
numMutations.
Value
A string defining the mutated sequence.
See Also
See shmulateTree for imposing mutations on a lineage tree. See HH_S5F and MK_RS5NF for predefined TargetingModel objects.
Examples
# Define example input sequence
sequence <- "NGATCTGACGACACGGCCGTGTATTACTGTGCGAGAGATA.TTTA"
# Simulate using the default human 5-mer targeting model
# Introduce 6 mutations
shmulateSeq(sequence, numMutations=6, frequency=FALSE)
# Introduction 5% mutations
shmulateSeq(sequence, numMutations=0.05, frequency=TRUE)