MINOR CHANGE: Refactor matrix coercion thanks to Matrix 1.5-0.
DOCUMENTATION: Remove comments from generate_dataset()
.
DOCUMENTATION: Extend usage of wrap_dataset()
.
DOCUMENTATION: Document outputs of combine_models()
and get_timings()
.
BUG FIX calculate_dimred()
: Force deep copy of matrix to avoid error message:
"Error in x$.self$finalize() : attempt to apply non-function".
plot_feature_network()
: Added workaround for thomasp85/ggforce#273.BUG FIX generate_experiment()
: Return timepoint groups for experiment_synchronised()
.
BUG FIX unit tests: loosen generate partitions constraints.
MINOR CHANGE generate_dataset()
: Fix subplot title.
NEW FEATURE plot_summary()
: Create a dedicated function for plotting a dyngen summary.
BUG FIX generate_cells()
: Fix incorrect cell count when one of the backbone segments does not have any simulations steps (#26).
DOCUMENTATION: Update citation to NCOMMS publication.
MINOR CHANGE .download_cacheable_file()
: Check the return value of utils::download.file()
, since it is possible that the download will fail with a non-zero status but not an R error.
MINOR CHANGE kinetics_random_distributions()
: Add function for providing randomised distributions.
This version mostly upgrades dyngen's ease-of-use, such as better vignettes, conversion functions for working with dyngen datasets in other packages, and more useful ways of specifying platform-specific parameters (i.e. number of cores and cache location). Perhaps more excitingly, the dyngen documentation is more readable online at https://dyngen.dynverse.org!
wrap_dataset()
: Now returns a list instead of a dyno object. Use as_dyno(model)
or wrap_dataset(model, format = "dyno")
to replicate previous behaviour.Added functions for converting the dyngen output to various data formats: as_anndata()
for anndata, as_sce()
for SingleCellExperiment, as_seurat()
for Seurat, as_dyno()
for dyno, as_list()
for a simple list object.
wrap_dataset()
: Added 'format' argument which allows choosing the output format (#28).
The default number of cores used can be set by adding options(Ncpus = ...)
to your Rprofile.
The default cache folder for dyngen can be set by adding options(dyngen_download_cache_dir = ...)
to your Rprofile.
Combine similar models with different outputs using the combine_models()
function.
Store the timings throughout the dyngen execution. Extract the timings from a model using get_timings()
.
generate_experiment()
: Map count density of reference dataset to simulation expression before sampling molecules.
Parameters are available for toggling off or on the mapping of the reference library size & CPM distribution.initialise_model()
: Change defaults of num_cores
and download_cache_dir
to getOption("Ncpus")
and getOption("dyngen_download_cache_dir")
respectively.
generate_experiment()
: Drastically speed up sampling of molecules.
as_dyno()
: Fix drop = FALSE
bug when only one cell is being sampled.
Removed names from feature ids in feature info (unname(model$feature_info$feature_id)
). Thanks @milanmlft!
Added and extended vignettes:
Created a website at https://dyngen.dynverse.org using pkgdown.
Shortened examples to reduce r cmd check time.
wrap_dataset()
: Outputted $counts
now contains counts of both spliced and unspliced reads, whereas
$counts_unspliced
and $counts_spliced
contains separated counts.
Added a docker container containing the necessary code to run a dyngen simulation.
Added logo to package.
Clean up internal code, mostly to satisfy R CMD check.
Added two vignettes.
Expanded the README.
Implement knockdown / knockouts / overexpression experiments.
Implement better single-cell regulatory activity by determining the effect on propensity values after knocking out a transcription factor.
Implement adding noise to the kinetic params of individual simulations.
Kinetics (transcription rate, translation rate, decay rate, ...) are based on Schwannhausser et al. 2011.
Changed many parameter names to better explain its purpose.
Fix module naming of backbones derived from backbone_branching()
.
Allow to plot labels in plot_simulation_expression()
.
Improve backbone_disconnected()
and backbone_converging()
.
Rename required columns in backbone()
input data.
Use backbone_linear()
to make backbone_cyclic()
randomised.
Added a decay rate for pre-mRNAs as well.
Kinetics: redefine the decay rates in terms of the half-life of these molecules.
Only compute dimred if desired.
Allow computing the propensity ratios as ground-truth for rna velocity.
Implement fix for double positives in bblego
backbones.
Fix graph plotting mixup of interaction effects (up/down).
Made a fix to the computation of feature_info$max_protein
.
MAJOR CHANGES: Custom backbones can be defined using backbone lego pieces. See ?bblego
for more information.
MAJOR CHANGES: Splicing reactions have been reworked to better reflect biology.
Complete rewrite from dyngen
from the bottom up.
OPTIMISATION: All aspects of the pipeline have been optimised towards execution time and end-user usability.
OPTIMISATION: dyngen
0.2.0 uses gillespie
0.2.0, which has also been rewritten entirely in Rcpp
,
thereby improving the speed significantly.
OPTIMISATION: The transcription factor propensity functions have been refactored to make it much more computationally efficient.
OPTIMISATION: Mapping a simulation to the gold standard is more automised and less error-prone.
FEATURE: A splicing step has been added to the chain of reaction events.
INITIAL RELEASE: a package for generating synthetic single-cell data from regulatory networks. Key features are:
dyngen
0.1.0 uses gillespie
0.1.0, a clone of GillespieSSA
that is much less
error-prone and more efficient than GillespieSSA
.igraph
and
generates simple single-cell expression data using GillespieSSA
.