Changes in version 1.16.0 o Bugfix to rownames of mnnCorrect() output when using correct.all=TRUE with subset.row=. Changes in version 1.8.0 o Migrate findMutualNN() to BiocNeighbors. o Support d=NA in multiBatchPCA() for more convenient disabling of PCA in calling functions. o Bugfix for d=NA with specified subset.row= in fastMNN(). o Added the applyMultiSCE() function to easily apply functions across main/alternative Experiments from multiple SingleCellExperiment inputs. o Added the mnnDeltaVariance() function to compute diagnostics from the variances of the differences between MNN pairs. o Added the quickCorrect() function to quickly perform intersection, normalization, feature selection and correction. o Added some clustering-based diagnostics (clusterAbundanceVar(), clusterAbundanceTest() and compareMergedClusters()) from the OSCA book. o File-backed matrices are now realized into memory prior to multiBatchPCA(). Changes in version 1.6.0 o Allow regressBatches() to operate without batch= when design= is provided. Added d= and related options to conveniently perform a PCA on the ResidualMatrix. o Added correct.all= option to all correction functions for consistency. o Added a deferred=TRUE default to multiBatchPCA and its callers, to encourage use of deferred matrix multiplication for speed. o Switched default PCA algorithm in multiBatchPCA to IrlbaParam. o Added add.single= mode for endomorphic addition of correction results in correctExperiments(). Changes in version 1.4.0 o Support the use of arbitrary design matrices in regressBatches(). o Allow lists of objects to be directly passed into the ... for many functions. o Added the clusterMNN() function for performing MNN on cluster centroids. o Added get.variance= option to fastMNN() to return variance explained from PCA. Support d=NA to skip the PCA step altogether. o Modified correctExperiments() to preserve non-conflicting rowData() fields. Changes in version 1.2.0 o Deprecated rotate.all= in favour of get.all.genes= in multiBatchPCA(). o Switched BSPARAM= to use IrlbaParam(deferred=TRUE) by default in fastMNN(), so that the default behaviour is actually fast. o Deprecated auto.order= in favor of merge.order= and auto.merge= in fastMNN() and mnnCorrect(). Automatic merging now detects potential tree-based merges. Merge trees can also be specified as input. o Added the correctExperiments() function to cbind the original assays alongside the merged values. o Added the subset.row= argument to cosineNorm() for in-place subsetting. o Added batch= and preserve.single= arguments to multiBatchNorm(). Standardized behavior of subset.row= by adding a normalize.all= argument. o Added the regressBatches() function for correction via standard linear regression. o Added the prop.k= argument in all MNN-related functions, to allow the value of k to adapt asymmetrically to the size of each batch. Changes in version 1.0.0 o New package batchelor, for batch correction of single-cell (RNA sequencing) data.