Bioconductor 3.12 wrap-up

My wrap-up of the Bioconductor 3.12 release

Luke Zappia


October 30, 2020

The Bioconductor 3.12 release was this week. Here is my wrap-up of new packages and updates. This is only the things I found interesting based on the release and they don’t come with any particular endorsement. If there is something else you are looking for have a look at the release notes here.

My packages


  • Add the splatPop simulation. This is a extension to the splat simulation contributed by Christina Azodi and Davis McCarthy that adds population effects. It allows you to specify relatedness between individuals and generate cell-type specific eQTL effects.
  • Add a batch.rmEffect parameter to the Splat simulation. This allows generation of a paired simulation without any batch effects.
  • Add a new minimiseSCE function which can be used to remove unneeded information from simulation output (or any SingleCellExperiment)
  • All simulations now return sparse assay matrices by default when they would be smaller than the equivalent dense matrix. This is controlled by a new sparsify argument.
  • Users will now be automatically prompted to install packages if they try to use a simulation for which the suggested dependencies are not available


This is a new package (with help from Aaron Lun) that contains methods to convert between SingleCellExperiment and Python AnnData objects.

New packages

  • {ADImpute} - dropout imputation using information from gene regulatory networks
  • {aggregateBioVar} - provides tools to aggregating SummarizedExperiment objects at the subject level
  • {BayesSpace} - tools for clustering tha enhancing spatial gene expression
  • {BiocIO} - generics for importing and exporting biological data
  • {biocthis} - automate setting up packages for Bioconductor
  • {bluster} - wraps common clustering algorithms for Bioconductor
  • {corral} - correspondence analysis for single-cell data
  • {densvis} - implements the density-preserving modifications to t-SNE and UMAP
  • {escape} - bridging package for scRNA-seq gene set enrichment
  • {ExperimentSubset} - interface for accessing subsets of SummarizedExperiment objects
  • {Herper} - interface for managing conda environments
  • {ILoReg} - high-resolution scRNA-seq population identification
  • {Informeasure} - implementation of information measures such as mutual information
  • {Nebulosa} - visualisation of scRNA-seq using gene-weighted density estimation
  • {NewWave} - dimensionality reduction and batch correction for scRNA-seq
  • {pipeComp} - simple framework for comparing pipelines
  • {recount3} - access data from recount3
  • {scCB2} - extends the EmptyDrops method for identifying real cells by testing clusters
  • {scDataviz} - functions for plotting single-cell data
  • {scuttle} - basic functions for single-cell analysis (most previously in {scater})
  • {snifter} - R wrapper for the Python openTSNE library
  • {SpatialExperiment} - S4 class for storing spatial experiments
  • {SPsimSeq} - Semi-parametric RNA-seq simulation
  • {velociraptor} - R wrapper for the scVelo Python package


  • {BASiCS} - many updates and improvements
  • {basilisk} - support for setting conda channels and safer environment construction
  • {DESeq2} - overhaul of dispersion estimation allowing use of the {glmGamPoi} package for single-cell data
  • {DropletUtils} - functions for handling ambient counts
  • {edgeR} - support for SummarizedExperiment objects and improvements to the limma voom-lmFit pipeline
  • {limma} - improvements to some fitting functions
  • {scran} - various new function arguments, some functions moved to other packages