Added

  • Add support for imaging-based spatial datasets

Changes

Changes

  • Replaced import from spatstat.core with spatstat.explore
  • Fix bug in FindMarkers() when using SCT assay (#6856)

Changes

Changes

  • Fix giveCsparse related warnings in Read10X_h5
  • Fix ident labeling for SpatialPlot (#5774)
  • Fix ReadMtx on Windows (#5687)
  • Fix VlnPlot to switch on rasterization only when required (#5846)
  • Fix ncol behavior in SpatialPlot (#5774)
  • Set jitter to FALSE in FeatureScatter (#5876)
  • Update Cells methods to new signature (x, ...)
  • Replace use of default.stringsAsFactors() with getOption("stringsAsFactors")

Added

  • Add raster.dpi parameter to DimPlot/FeaturePlot to optionally rasterize individual points (#5392)
  • Add support for sctransform v2, differential expression with SCT assay

Changes

  • Update ReadParseBio to support split-pipe 0.9.6p (#5446)
  • Fixes for MAST differential expression (#5441)
  • Fix scaling options when using split.by in FeaturePlot() (#5243)

Added

  • Implement supervised LSI

Changes

  • Add raster parameter to VlnPlot to optionally rasterize individual points (#5076)
  • Add min.cells.group parameter to FindConservedMarkers (#5079)
  • Set do.center to FALSE for lsiproject in FindTransferAnchors
  • Fix error message in ReadMtx() (#5158)
  • Add label.color parameter to FeaturePlot (#5314)
  • Fix issues in ProjectUMAP (#5257, #5104, #5373)

Changes

Added

Changes

  • Warn and continue rather than erroring if not all features are available in FindSpatiallyVariableFeatures() (#4611)
  • Bug fix for SCT-based integration in selecting proper reference model (#4355)
  • Bug fix for reading from absolute paths in ReadMtx (#4723)
  • Bug fix in SingleCellExperiment conversion (#4633)
  • Bug fix in FindVariableFeatures() when using selection.method = "mvp" and binning.method = "equal_frequency" (#4712)
  • Bug fix in DoHeatmap() to remove random characters from plot legend(#4660)
  • Fix cell renaming in RunCCA()
  • Fix issue in SingleCellExperiment conversion where the mainExp would not be set properly
  • Fix for default dispersion info displayed in VariableFeaturePlot()

Added

Changes

Added

Changes

  • Preserve feature metadata when converting from SingleCellExperiment to SeuratObject class (#4205)
  • Preserve multiple assays when converting from SingleCellExperiment to SeuratObject class (#3764)
  • Fix passing of score.thresh parameter in ScoreJackStraw() (#4268)
  • Fix FC calculation in FindMarkers() non-log transformed data.
  • Add umap-learn version >= 0.5.0 compatibility for RunUMAP()
  • Fix DotPlot to use log1p when scale=False (#4298)
  • Fix split and shuffled DimPlot
  • Disallow NULL or another length 0 vector for ident.1 in FindMarkers()
  • Fix range shift when labeling clusters on a GeomSpatial plot
  • Fix SpatialPlot distortion for non-square images.
  • Fix future-related warnings in FindIntegrationAnchors()
  • Fix fc.name parameter in FindMarkers() (#4474)
  • Deprecate group.by parameter in PlotPerturbScore() in favor of mixscape.class.

Added

Changes

  • Equality added to differential expression thresholds in FindMarkers (e.g, >= logfc.threshold rather than >)
  • Read10X() now prepends dataset number for first dataset when reading multiple datasets
  • Bug fix for subset.AnchorSet()
  • Bug fix for fold change values in FindMarkers() when setting a different pseudocount (#4111)
  • Bug fix for RunLDA() related to proper passing of assay parameter.
  • When using order=TRUE in SingleDimPlot(), print NA points under all others.
  • Remove default parameter value for data.dir in Read10X()
  • Import spatstat fxns from subpackages (spatstat.core, spatstat.geom)
  • RunUMAP now checks for graph/neighbor consistency

Added

Changes

  • Default neighbor finding algorithm changed from “rann” to “annoy”
  • Default ncells parameter in SCTransform() changed to 5000
  • Default fold change in FindMarkers() changed from ln to log2
  • Implementation improvements to AverageExpression()
  • AnchorSet class re-implemented as a virtual class from which IntegrationAnchorSet and TransferAnchorSet now inherit.
  • Point size in VlnPlot() now set automatically if not specified
  • Return the sample.tree properly when integrating with a single reference dataset
  • Replace as.character.quosure usage with as_label due to deprecation
  • Minor changes to the exact calculation of the anchor weight matrix
  • Default rasterization limit in DimPlot() and FeaturePlot() changed from 50,000 to 100,000
  • SCTransform() now returns a formalized Assay subclass SCTAssay()
  • When using normalization.method='SCT' in FindTransferAnchors(), normalize query using reference SCT model when possible.
  • Change default Neighbor name in FindNeighbors to Assay.nn

Removed

Added

  • Titles added to DimPlot when specifying group.by parameter
  • keep.scale parameter added to FeaturePlot to control scaling across multiple features and/or splits.

Changes

  • Same deprecated in favor of base::identity
  • Fix in DietSeurat to work with specialized Assay objects
  • Fix p-value return when using the ape implementation of Moran’s I
  • Fix bug in FindMarkers when using MAST with a latent variable
  • Updates to Key<-.DimReduc that allow handling of empty reduction column names
  • Allow setting ctrl in CellCycleScoring
  • Modify subset.Seurat to allow specialized Assay subsetting methods
  • Fix image selection in interactive spatial plots
  • Update Rcpp functions with export(rng=FALSE) to avoid potential future warnings
  • Fix RenameCells bug for integrated SCT assays
  • Fix highlight order with proper factor levels when using SetHighlight in plots
  • Small change in CellRanger version detection logic of h5 file to improve robustness to outside tools.
  • do.cpp deprecated and will default to true

Changes

  • Set the seed in WhichCells regardless of whether or not idents is passed
  • Retain Graph and Neighbor objects when subsetting only on features
  • Fix data.frame input to CreateAssayObject() when data.frame has no rownames.
  • Default annoy search to sequential if not using multicore future plans.
  • Require sctransform >= 0.3.0

Added

  • Added support for nearest neighbor input and return.model parameter in RunUMAP()
  • Enable named color vectors in DoHeatmap()
  • Add label.color and label.box parameters to DimPlot
  • Added shuffle and seed parameters to DimPlot() to help with overplotting
  • Added new stacked violin plot functionality

Changes

  • Allow setting slot parameter in RunUMAP
  • Added support for FIt-SNE v1.2+
  • Fix for Spatial*Plot when running with interactive=TRUE
  • Set max for number of items returned by Top and remove duplicate items when balanced=TRUE
  • Fix logging bug when functions were run via do.call()
  • Fix handling of weight.by.var parameter when approx=FALSE in RunPCA()
  • Fix issue where feature names with dashes crashed CellSelector
  • Fix issue where errors in subsetting were being swallowed
  • Fix issue where labeling uncropped spatial plots was broken

Deprecated

Added

  • Added ability to create a Seurat object from an existing Assay object, or any object inheriting from the Assay class
  • Added ability to cluster idents and group features in DotPlot
  • Added ability to use RColorBrewer plaettes for split DotPlots
  • Added visualization and analysis functionality for spatially resolved datasets (Visium, Slide-seq).

Changes

  • Removed add.iter parameter from RunTSNE function
  • Fixed integer overflow error in the WilcoxDETest function
  • Minor visual fixes in DoHeatmap group bar + labels
  • Efficiency improvements in anchor scoring (ScoreAnchors)
  • Fix bug in FindClusters() when the last node has no edges
  • Default to weighted = TRUE when constructing igraph objects in RunLeiden. Remove corresponding weights parameter from FindClusters().
  • Fix handling of keys in FeatureScatter()
  • Change CellSelector to use Shiny gadgets instead of SDMTools
  • Mark PointLocator as defunct
  • Remove SDMTools
  • Fixed data slot return in AverageExpression when subsetting features and returning a Seurat object

Added

  • New scale parameter in DotPlot
  • New keep.sparse parameter inCreateGeneActivityMatrix` for a more memory efficient option
  • Added ability to store model learned by UMAP and project new data
  • New strip.suffix option in Read10X. This changes the default behavior of Read10X. A trailing -1 present in all cell names will not be removed by default.
  • Added group.by parameter to FeatureScatter

Changes

  • Replace wilcox.test with limma implementation for a faster FindMarkers default method
  • Better point separation for VlnPlots when using the split.by option
  • Efficiency improvements for anchor pairing
  • Deprecate redundant sort.cell parameter in FeaturePlot
  • Fixes to ensure correct class of Matrix passed to c++ functions
  • Fixes for underscores in ident labels for DotPlot
  • Ensure preservation of matrix dimnames in SampleUMI
  • Fix non-standard evaluation problems in subset and WhichCells
  • Default split violin option is now a multi group option
  • Preserve alpha in FeaturePlot when using blend
  • Update assay.used slot for DimReducs when Assay is renamed

Changes

  • Fixes to DoHeatmap to remain compatible with ggplot2 v3.3
  • Adoption of patchwork framework to replace CombinePlots

Added

  • New system agnostic Which function to address problems with FItSNE on Windows

Changes

  • Export CellsByIdentities and RowMergeSparseMatrices functions
  • nCount and nFeature metadata variables retained after subset and updated properly with UpdateSeuratObject
  • Fix uwot support for running directly on feature matrices
  • Fixes for keys with underscores
  • Fix issue with leiden option for FindClusters
  • Fix for data transfer when using sctransform
  • SDMTools moved to Suggests as package is orphaned

Added

  • New silent slot updater
  • New random seed options to RunCCA, RunTSNE, WhichCells, HTODemux, AddModuleScore, VlnPlot, and RidgePlot
  • Enhancements for dealing with Assay-derived objects

Changed

  • Only run CalcN (generates nFeatures and nCounts) when counts changes
  • Fix issue regarding colons in feature names
  • Change object class testing to use inherits or is.* for R 4.0 compatability

Added

  • New RegroupIdents function to reassign idents based on metadata column majority
  • UpdateSymbolList function to pull new gene names from HGNC
  • Added support for H5AD layers as additional assays in a Seurat object

Changed

  • Fix rownames issue when running UMAP on dist object
  • Add support for new H5AD obsm and varm stucture
  • Fix issue when trying to read non-existent feature-level metadata from an H5AD file
  • Fix in integration workflow when using SCTransform
  • Improved error checking for AddModuleScore
  • cbind fix in reference-based integration (MapQuery)
  • Fix for convenience plots error hanging
  • Ensure Seurat objects aren’t stored in the command logs

Added

  • New PrepSCTIntegration function to facilitate integration after SCTransform
  • Reference-based integration with the reference parameter in FindIntegrationAnchors
  • Reciprocal PCA as a reduction option in FindIntegrationAnchors
  • New CollapseEmbeddingOutliers function
  • Enable FindTransferAnchors after SCTransform
  • Added back ColorDimSplit functionality
  • Include a code of conduct
  • Added uwot support as new default UMAP method
  • Added CheckDots to catch unused parameters and suggest updated names
  • Reductions and Assays assays functions to list stored DimReducs and Assays

Changed

  • Fix regex in LogSeuratCommand
  • Check for NAs in feature names in Read10X
  • Prevent dimnames for counts/data/scale.data matrices from being arrays
  • Updates ReadH5AD to distinguish FVF methods
  • Fixes to UpdateSeuratObject for v2 objects
  • Sink all output from stdout to stderr
  • Fix to scale.data cell ordering after subsetting
  • Enable Assay specification in BuildClusterTree
  • Fix FeaturePlot when using both blend and split.by
  • Fix to WhichCells when passing cells and invert
  • Fix to HoverLocator labels and title
  • Ensure features names don’t contain pipes (|)
  • Deprecation of RunLSI and RunALRA
  • Fix legend bug when sorting in ExIPlot

Added

  • Flag to skip singleton grouping in FindClusters
  • New custom colors for blended FeaturePlots
  • New GetResidual function
  • New Seurat/Monocle converters

Changed

  • Fix issue where certain assays weren’t being shown in the Seurat object
  • Fix issue where we weren’t updating DimReduc object column names
  • Fix line spacers in DoHeatmap
  • Fix uninformative labels in FeaturePlot
  • Fix unset identities when converting from SCE to Seurat
  • Fix single colors being interpreted as palettes in SingleDimPlot
  • Ensure factor levels are always numerically increasing after FindClusters
  • Better cell highlighting colors for DimPlot
  • Fix to levels<-.Seurat
  • Add ability to use counts/scaled data in BuildClusterTree
  • Minor fix to split ScaleData

Added

  • Add global option (Seurat.memsafe) to skip gc() calls
  • Restore draw.lines to DoHeatmap, maintain size of color bar with different number of features (#1429)
  • Enable split.by parameter for ScaleData
  • Add slot parameter to FeaturePlot (#1483)
  • Add assay parameter to DotPlot (#1404)

Changed

  • Fix to color options for VlnPlot with split.by option (#1425)
  • Improvements to conversion functions (loom, SCE)
  • Fix for cluster tree reordering (#1434)
  • Fix PercentageFeatureSet for single feature case
  • Fix to fold change calculation and filtering for other slots in FindMarkers (#1454)
  • Keep title vectorized in AugmentPlot (#1515)
  • Export LogSeuratCommand function
  • Fix for FindConservedMarkers when one ident is missing from a group (#1517)

Added

  • New method for identifying anchors across single-cell datasets
  • Parallelization support via future
  • Additional method for demultiplexing with MULTIseqDemux
  • Support normalization via sctransform
  • New option for clustering with the Leiden algorithm
  • Support for reading 10X v3 files
  • New function to export Seurat objects for the UCSC cell browser
  • Support for data import from Alevin outputs
  • Imputation of dropped out values via ALRA

Changed

  • Significant code restructuring
  • Most occurances of “gene(s)” in function names/arguments renamed to “feature(s)”
  • Changes to the Seurat object class to facilitate multimodal data
  • New BlendPlot implementation

Added

  • GetIdent function added to pull identity info

Changed

  • DiffusionMap dependency replaced with destiny to avoid archival
  • Java dependency removed and functionality rewritten in Rcpp
  • Speed and efficiency improvements for Rcpp code
  • More robust duplicate handling in CellCycleScoring

Added

  • New HTOHeatmap function
  • Support for custom PNG arguments for vector-friendly plotting
  • Fix for ‘NA’-labeled cells disappearing with custom color scale

Changed

  • Replaced FNN with RANN
  • Removed unused compiler flags
  • Moved several lightly-used packages from ‘imports’ to ‘suggests’

Added

  • RenameCells added for easy renaming of all cells
  • Read10X_h5 added to read in 10X formatted h5 files
  • SetAssayData ensures cell order is the same between assay objects and the Seurat object
  • Compatability updates for ggplot2 v2.3.0

Added

  • Support for UMAP dimensional reduction technique
  • New conversion functions for SingleCellExperiment and anndata

Changed

  • FetchData preserves cell order
  • Require Matrix 1.2-14 or higher
  • AddModuleScore no longer densifies sparse-matrices
  • Various visualization fixes and improvements
  • Default value for latent.vars in FindMarkers/FindAllMarkers changed to NULL.

Added

  • Support for HTO demultiplexing
  • Utility functions: TransferIdent, CombineIdent, SplitObject, vector.friendly
  • C++ implementation for parts of BuildSNN
  • Preliminary parallelization support (regression and JackStraw)
  • Support for FItSNE

Changed

  • MetaDE replaced with metap for combining p-values (MetaDE was removed from CRAN)
  • NMF heatmaps replaced (NMF to be archived by CRAN)

Changed

  • MetaDE replaced with metap for combining p-values (MetaDE was removed from CRAN)
  • NMF heatmaps replaced (NMF to be archived by CRAN)

Added

  • Multiple alignment functionality with RunMultiCCA and AlignSubspace extended to multiple datasets
  • CalcAlignmentScore added to evaluate alignment quality
  • MetageneBicorPlot added to guide CC selection
  • Change cluster order in DoHeatmap with group.order parameter
  • Ability to change plotting order and add a title to DimPlot
  • do.clean and subset.raw options for SubsetData

Changed

  • JoyPlot has been replaced with RidgePlot
  • FindClusters is now more robust in making temp files
  • MetaDE support for combining p-values in DE testing

Added

  • Support for using MAST and DESeq2 packages for differential expression testing in FindMarkers
  • Support for multi-modal single-cell data via @assay slot

Changed

  • Default DE test changed to Wilcoxon rank sum test

Added

  • Now available on CRAN
  • Updated documentation complete with examples
  • Example datasets: pbmc_small and cc.genes
  • C++ implementation for parts of FindVariableGenes
  • Minor bug fixes

Added

  • New method for aligning scRNA-seq datasets
  • Significant code restructuring
  • New methods for scoring gene expression and cell-cycle phases
  • New visualization features (do.hover, do.identify)