cassiopeia/simulator
directory contains a collection of classes and modules for simulating various aspects of single-cell lineage tracing experiments. These simulators can generate synthetic phylogenetic trees, spatial data, lineage tracing data, and perform leaf subsampling. The main components include:
cassiopeia/simulator
directory provides tools to:
TreeSimulator
abstract base class: This is the starting point for implementing new tree simulation models.DataSimulator
abstract base class: This is the base class for implementing new data simulation models.LeafSubsampler
abstract base class: This is the base class for implementing new leaf subsampling strategies.BirthDeathFitnessSimulator
, Cas9LineageTracingDataSimulator
, and UniformLeafSubsampler
, provide specific simulation and subsampling functionalities.
The __init__.py
file in this directory serves as the main interface for importing and using the various simulator classes.
BirthDeathFitnessSimulator.py
: Implements a birth-death process with fitness variations for tree simulation.Cas9LineageTracingDataSimulator.py
: Simulates Cas9-based lineage tracing data.BrownianSpatialDataSimulator.py
: Generates spatial data for cells using a Brownian motion model.UniformLeafSubsampler.py
: Implements uniform random subsampling of leaves from a tree.ecDNABirthDeathSimulator.py
: Simulates the evolution of cell populations with extrachromosomal DNA.networkx
: Used for graph operations and tree manipulations.numpy
: Used for numerical computations and random number generation.pandas
: Used for handling data structures like character matrices.scipy
: Used for various scientific computing tasks, including spatial algorithms.sklearn
: Used for nearest neighbor searches in spatial simulations.cassiopeia.data.CassiopeiaTree
class for representing and manipulating phylogenetic trees.
experiment_time
, num_extant
)diffusion_coefficient
)cassiopeia/simulator
directory provides a comprehensive set of tools for generating synthetic single-cell lineage tracing data, enabling researchers to test and validate analysis methods, explore experimental designs, and gain insights into the underlying biological processes.