Skip to contents

Add mutations to the given tree sequence

Usage

ts_mutate(
  ts,
  mutation_rate,
  random_seed = NULL,
  keep_existing = TRUE,
  mut_type = NULL
)

Arguments

ts

Tree sequence object of the class slendr_ts

mutation_rate

Mutation rate used by msprime to simulate mutations

random_seed

Random seed passed to msprime's mutate method (if NULL, a seed will be generated between 0 and the maximum integer number available)

keep_existing

Keep existing mutations?

mut_type

Assign SLiM mutation type to neutral mutations? If NULL (default), no special mutation type will be used. If an integer number is given, mutations of the SLiM mutation type with that integer identifier will be created.

Value

Tree-sequence object of the class slendr_ts, which serves as an interface point for the Python module tskit using slendr functions with the ts_ prefix.

See also

ts_nodes for extracting useful information about individuals, nodes, coalescent times and geospatial locations of nodes on a map

Examples

check_dependencies(python = TRUE, quit = TRUE) # dependencies must be present

init_env()
#> The interface to all required Python modules has been activated.

# load an example model with an already simulated tree sequence
slendr_ts <- system.file("extdata/models/introgression_slim.trees", package = "slendr")
model <- read_model(path = system.file("extdata/models/introgression", package = "slendr"))

ts <- ts_load(slendr_ts, model)
ts_mutate <- ts_mutate(ts, mutation_rate = 1e-8, random_seed = 42)

ts_mutate
#> ╔═════════════════════════╗
#> ║TreeSequence             ║
#> ╠═══════════════╤═════════╣
#> ║Trees          │       70║
#> ╟───────────────┼─────────╢
#> ║Sequence Length│   500000║
#> ╟───────────────┼─────────╢
#> ║Time Units     │    ticks║
#> ╟───────────────┼─────────╢
#> ║Sample Nodes   │       26║
#> ╟───────────────┼─────────╢
#> ║Total Size     │204.8 KiB║
#> ╚═══════════════╧═════════╝
#> ╔═══════════╤════╤════════╤════════════╗
#> ║Table      │Rows│Size    │Has Metadata║
#> ╠═══════════╪════╪════════╪════════════╣
#> ║Edges      │ 298│ 9.3 KiB│          No║
#> ╟───────────┼────┼────────┼────────────╢
#> ║Individuals│  73│ 8.9 KiB│         Yes║
#> ╟───────────┼────┼────────┼────────────╢
#> ║Migrations │   0│ 8 Bytes│          No║
#> ╟───────────┼────┼────────┼────────────╢
#> ║Mutations  │2246│82.3 KiB│          No║
#> ╟───────────┼────┼────────┼────────────╢
#> ║Nodes      │  86│ 3.9 KiB│         Yes║
#> ╟───────────┼────┼────────┼────────────╢
#> ║Populations│   5│ 2.6 KiB│         Yes║
#> ╟───────────┼────┼────────┼────────────╢
#> ║Provenances│   4│38.1 KiB│          No║
#> ╟───────────┼────┼────────┼────────────╢
#> ║Sites      │2240│54.7 KiB│          No║
#> ╚═══════════╧════╧════════╧════════════╝
#>