Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dyngen 1.0.0 #27

Merged
merged 152 commits into from
Feb 23, 2021
Merged

dyngen 1.0.0 #27

merged 152 commits into from
Feb 23, 2021

Conversation

rcannood
Copy link
Member

@rcannood rcannood commented Feb 19, 2021

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!

BREAKING CHANGES

  • 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.

NEW FEATURES

  • 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 (dynwrap should be an Imports dependency, not Suggests #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().

MAJOR CHANGES

  • 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.

MINOR CHANGES

  • 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.

BUG FIX

  • 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!

DOCUMENTATION

  • Added and extended vignettes:

    • Advanced: Simulating batch effects
    • Advanced: Simulating a knockout experiment
    • Advanced: Running dyngen from a docker container
    • Advanced: Constructing a custom backbone
    • Advanced: Tweaking parameters
    • Advanced: Comparison of characteristic features between dyngen and reference datasets
  • Created a website at https://dyngen.dynverse.org using pkgdown.

  • Shortened examples to reduce r cmd check time.

@codecov
Copy link

codecov bot commented Feb 19, 2021

Codecov Report

Merging #27 (4f77ead) into master (0967ed8) will increase coverage by 5.46%.
The diff coverage is 81.38%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #27      +/-   ##
==========================================
+ Coverage   63.49%   68.95%   +5.46%     
==========================================
  Files          20       22       +2     
  Lines        2257     2654     +397     
==========================================
+ Hits         1433     1830     +397     
  Misses        824      824              
Impacted Files Coverage Δ
R/0b_modnet_pieces.R 0.00% <ø> (ø)
R/0c_backbone_lego.R 41.52% <ø> (ø)
R/0d_backbones.R 1.31% <0.00%> (ø)
R/rnorm_bounded.R 100.00% <ø> (ø)
R/simtime_from_backbone.R 100.00% <ø> (ø)
R/timings.R 25.00% <25.00%> (ø)
R/plotting.R 81.14% <63.49%> (-4.25%) ⬇️
R/1_initialisation.R 90.00% <73.33%> (-10.00%) ⬇️
R/generate_dataset.R 79.24% <80.00%> (-3.37%) ⬇️
R/7_experiment.R 76.14% <80.64%> (ø)
... and 15 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0967ed8...4f77ead. Read the comment docs.

@rcannood rcannood merged commit 7e79092 into master Feb 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant