These software packages all produce or consume tree sequences in the .trees file format.


Create tree sequences from models of biological processes

Simulate genealogical trees and genomic sequence data using population genetic models

ts = msprime.sim_ancestry(
ts = msprime.sim_mutations(ts, rate=1e-6)
Latest release: 1.1.0 1 month and 1 week ago
30 contributors

SLiM is a genetically explicit forward simulation software package for population genetics and evolutionary biology. It is highly flexible, with a built-in scripting language, and has a cross-platform graphical modeling environment called SLiMgui.

initialize() {
    initializeMutationType("m1", 0.5, "e", 0.001);
    initializeGenomicElementType("g1", m1, 1.0);
    initializeGenomicElement(g1, 0, 999999);
1 { sim.addSubpop("p1", 500); }
2000 late() { sim.treeSeqOutput("out.trees"); }
Latest release: v3.7 1 month and 1 week ago
12 contributors

Forward-time simulation in Python using fwdpp

Latest release: 0.17.1 1 week and 4 days ago
4 contributors


Create tree sequences from variation data

Infer a tree sequence from genetic variation data.

sample_data = tsinfer.load("phased_sequence_data.samples")
ts = tsinfer.infer(sample_data)
Latest release: 0.2.1 8 months and 1 day ago
9 contributors

Infer the age of ancestral nodes in a tree sequence.

dated_ts =
Latest release: 0.1.4 6 months and 3 weeks ago
3 contributors


Measure key statistics, manipulate tree sequences and their underlying tables

Analyse, create and manipulate tree sequences.

ts = tskit.load("example.trees")
afs = ts.allele_frequency_spectrum()
Latest release: 0.4.1 1 week and 4 days ago
28 contributors

Tools for dealing with tree sequences coming to and from SLiM.

  rts = pyslim.recapitate(ts, ancestral_Ne=10000)
Latest release: v0.314 2 years and 1 month ago
10 contributors

rust bindings for tskit!

Latest release: 0.7.0-alpha.1 1 month and 1 week ago
4 contributors