Additions

  • Added support for 10x Space Ranger 4.0 outputs (Visium data with segmentations)
    • Updated data loading functions Load10X_Spatial, Read10X_Image,
    • Updated GetTissueCoordinates.VisiumV2
    • Updated spatial visualization functions SpatialPlot, SingleSpatialPlot, SpatialDimPlot, SpatialFeaturePlot
    • Added helper functions Read10X_Segmentations, Read10X_HD_GeoJson, Format10X_GeoJson_CellID
  • Added function InteractiveSpatialPlot to allow users to interactively lasso-select cells from a spatial Seurat object (Visium, SlideSeq, or Vizgen data)

Fixes

  • Updated loading & visualization functions (see above for list) for Visium objects – see #10125 for details
    • For binned Visium data, x now correctly corresponds to imagecol from tissue positions; y now correctly corresponds to imagerow from tissue positions; these are now consistent with 10X’s coordinate system (with the origin being the top left).
  • Reverted #10062 in favor of fetching both grouping variables and dimensionality reduction embeddings with FetchData as previously; added warning to alert users when column names of metadata and dimensionality reduction embeddings conflict
  • Added color retrieval logic in LabelClusters for consistent cluster label coloring (#10198)

Changes

Additions

  • Added option to use cluster_leiden from igraph when running Leiden clustering (#9931)
  • Added option to use umap2 from uwot when running UMAP (#9918)
  • Added option to use approx_pow parameter from uwot when running UMAP (#9449)
  • Updated LoadXenium to add support for Xenium protein data (#10024)
  • Added option to specify stroke size in FeaturePlot (#10053)
  • Added label.size.cutoff parameter to DimPlot to allow users to label only clusters above a certain size (#10092)

Fixes

  • Fixed deprecated calls to Seurat functions GetAssayData and PackageCheck (#9924), (#10102)
  • Fixed errors in RunAzimuth relating to FindTransferAnchors (#9924)
  • Fixed errors in LeverageScore relating to handling of (variable) features (#9924)
  • Updated PseudobulkExpression to acccount for the case that a category passed to group.by has only one value (#10092)
  • Updated VlnPlot to use assay passed to the function if specified (#10092)
  • Updated FeatureScatter to allow gene names with parentheses to be plotted (#10092)
  • Updated SingleRasterMap to store object metadata correctly (#10092)
  • Updated FindClusters to order cluster factor levels correctly when assigning a custom cluster name (#10092)
  • Updated FindConservedMarkers to remove NA values (#9917)
  • Updated visualization functions to avoid ggplot2 guides, aes_string, and facet_grid deprecation warnings (#9409, #10116)
  • Fixed DimPlot bug where metadata columns named ‘PC_1’, ‘UMAP_1’ etc override reduction embeddings (#10062)

Changes

  • Fixed PseudobulkExpression to forward relevant arguments to NormalizeData (#9840)
  • Fixed bugs in FindSpatiallyVariableFeatures; deprecated the slot parameter in favor of layer (#9836)
  • Extended FindTransferAnchors’s reference argument to accept SCT inputs containing more than one SCT model; in this case, the reference model that was fit against the largest number of cells is used (#9833)
  • Extended FindTransferAnchors’s query argument to accept multi-layer inputs; updated MappingScore to support multi-layer query inputs (#9832)
  • Updated LeverageScore.default to convert BPCells::IterableMatrix inputs with less than 7500 cells into a sparse matrix before performing the calculation (#9831)
  • Dropped VariableFeatures setter from SketchData (#9830)
  • Extended Cells.SCTAssay’s layer argument accept slot names: "counts", "data", "scale.data"; enabled compatibility with SketchData/LeverageScore(#9830)
  • Updated SCTransform.StdAssay to simplify and speed up the method (#9828)
  • Updated AddModuleScore to support multi-layer inputs (#9826)
  • Fixed PseudobulkExpression to work with Seurat inputs containing more than one assay (9824)
  • Added RunICA.StdAssay (#9825)
  • Updated HarmonyIntegration to call harmony::RunHarmony in favor of the deprecated harmony::HarmonyMatrix (#9789)
  • Added raster.dpi parameter to VlnPlot (#9665)
  • Fixed SpatialDimPlot(..., interactive = TRUE) to support SlideSeq and STARmap input types; added ScaleFactors.SlideSeq & ScaleFactors.STARmap generics (#9691)
  • Fixed PercentageFeatureSet so that the assay parameter is always respected; fixed PercentageFeatureSet to raise a warning if any features are absent in the specified assay instead of throwing an error (#9686)
  • Fixed GroupCorrelation and GroupCorrelationPlot to be compatible with SeuratObject >= 5.0.0 (#9625)

Changes

  • Fixed test_find_clusters.R to accommodate variability in label assignments given by FindClusters across different systems (#9641)

Changes

  • Added group.by parameter to FindAllMarkers, allowing users to regroup their data using a non-default identity class prior to performing differential expression (#9550)
  • Added image.type parameter to Read10X_Image enabling VisiumV1 instances to be populated instead of instances of the default VisiumV2 class (#9556)
  • Fixed IntegrateLayers to respect the dims.to.integrate parameter
  • Added stroke.size parameter to DimPlot (#8180)
  • Updated RunLeiden to use the leidenbase package instead of leiden; deprecated the method parameter for RunLeiden and FindClusters; updated RunLeiden to reset random.seed to 1 if the value is 0 or less (#6792)
  • Updated RunPCA to use the BPCells-provided SVD solver on BPCells matrices; updated JackStraw to support BPCells matrices (#8271)
  • Fixed RunPCA to avoid converting BPCells matrices into dense matrices - significantly reduces the function’s memory usage when running on BPCells matrices (#8966)
  • Updated RunSLSI to support BPCells matrices
  • Fixed DietSeurat so that the layers parameter is respected (#8197)
  • Updated RunUMAP to support umap-learn version >= 0.5.0 (#9559)
  • Updated LoadXenium and ReadXenium to accommodate the output from XOA v3.0; updated LoadXenium to provide more fine-grained control over the datatypes parsed in, including nucleus segmentation masks, segmentation methods, and other experimental metadata; updated ReadXenium to load cell_feature_matrix.h5 when present in favor of the MEX format files; updated ReadXenium to load .parquet files using arrow instead of .csv.gz files to support XOA 3.0 (#8604)
  • Fixed LoadXenium to accommodate datasets without “Blank Codeword” or “Unassigned Codeword” matrices(#9135)
  • Fixed ReadXenium to properly parse multiple molecular outputs at once (#8265)
  • Added features parameter to LeverageScore and SketchData
  • Updated SketchData’s ncells parameter to accept integer vector

Changes

  • Updated interactive SpatialDimPlots to display spatial coordinates
  • Updated BuildClusterTree to PseudobulkExpression(..., method = "aggregate") instead of AverageExpression
  • Fixed SpatialPlot to properly handle images with shared cells
  • Added cluster.name parameter to BuildNicheAssay
  • Added VisiumV2 class, inherits SeuratObject::FOV, returned by Load10X_Spatial
  • Updated Load10X_Spatial to support loading Visium HD datasets - added bin.size parameter
  • Updated Read10X_Coordinates to handle new tissue_coordinates.parquet files
  • Added shape parameter to SpatialPlot and wrappers: SpatialFeaturePlot and SpatialDimPlot
  • Added image.scale parameter to SpatialPlot and related functions: SpatialFeaturePlot/ISpatialFeaturePlot and SpatialDimPlot/ISpatialDimPlot
  • Restored image.name parameter to Read10X_Image
  • Added scale parameter to Radius.VisiumV1
  • Fixed calculation of spot.radius attribute for VisiumV1 instance returned by Read10X_Image — replace scale.factors$fiducial with scale.factors$spot
  • Added Read10X_Coordinates and Read10X_ScaleFactors
  • Fixed SpatialPlot to properly handle mutli-assay Seurat instances

Changes

  • Fixed PercentAbove to discount null values (#8412)
  • Added log parameter to FeatureScatter
  • Fixed handling of clip.range for SCTransform when ncells is less than the size of the passed dataset

Changes

  • Fixed AverageExpression to handle features vector when layer="scale.data" and return.seurat=TRUE
  • Added fc.slot parameter to FindMarkers
  • Fixed SCTransform to handle vars.to.regress (#8148) and (#8349)
  • Fixed SCTransform to handle fetching residuals (#8185)

Changes

  • Fixed SCTransform.StdAssay to pass extra arguments to sctransform::vst(). Fixes #875
  • Fixed PercentageFeatureSet Layer calling (#8009)
  • Fixed cell highlighting (#7914)
  • Updated marker sorting to be by p-value with ties broken by absolute difference in percent expression
  • Fixed issue with replicated barcodes in MappingScore (#7922)
  • Improved PseudobulkExpression by adding ‘g’ to cell names that started with numeric values
  • Improved PseudobulkExpression by adding each variable specified in group.by as columns in the object metadata when return.seurat=TRUE
  • Fixed DimPlot and FeatureScatter which were breaking when using the split.by argument with a variable that contained NAs

Added

  • Add BridgeCellsRepresentation to construct a dictionary representation for each unimodal dataset.
  • Add BuildNicheAssay to construct a new assay where each feature is a cell label. The values represent the sum of a particular cell label neighboring a given cell.
  • Add CalcDispersion to calculate the dispersion of features.
  • Add CCAIntegration to perform Seurat-CCA Integration.
  • Add CountSketch to generate a CountSketch random matrix.
  • Add CreateCategoryMatrix to create a one-hot matrix for a given label.
  • Add DISP to find variable features based on dispersion.
  • Add FastRPCAIntegration as a convenience wrapper function around the following three functions that are often run together when performing integration.
  • Add FetchResiduals_reference as a temporary function to get residuals from the reference.
  • Add FetchResiduals to call sctransform::get_residuals.
  • Add FetchResidualSCTModel to calculate Pearson residuals of features not in the scale.data.
  • Add FindBridgeAnchor to find bridge anchors between two unimodal datasets.
  • Add FindBridgeIntegrationAnchors to find a set of anchors for integration between unimodal query and the other unimodal reference using a pre-computed BridgeReferenceSet.
  • Add FindBridgeTransferAnchors to find a set of anchors for label transfer between unimodal query and the other unimodal reference using a pre-computed BridgeReferenceSet.
  • Add GaussianSketch to perform Gaussian sketching.
  • Add HarmonyIntegration to perform Harmony integration.
  • Add IntegrateLayers to integrate layers in an assay object.
  • Add JointPCAIntegration to perform Seurat-Joint PCA Integration.
  • Add LeverageScore to compute the leverage scores for a given object.
  • Add LoadCurioSeeker to load Curio Seeker data.
  • Add MVP to find variable features based on mean.var.plot.
  • Add NNtoGraph to convert the Neighbor class to an asymmetrical Graph class.
  • Add PrepareBridgeReference to preprocess the multi-omic bridge and unimodal reference datasets into an extended reference.
  • Add ProjectCellEmbeddings to project query data onto the reference dimensional reduction.
  • Add ProjectData to project high-dimensional single-cell RNA expression data from a full dataset onto the lower-dimensional embedding of the sketch of the dataset.
  • Add ProjectDimReduc to project query data to reference dimensional reduction.
  • Add ProjectIntegration to integrate embeddings from the integrated sketched.assay.
  • Add PseudobulkExpression to normalize the count data present in a given assay.
  • Add Read10X_probe_metadata to read the probe metadata from a 10x Genomics probe barcode matrix file in HDF5 format.
  • Add RPCAIntegration to perform Seurat-RPCA Integration.
  • Add RunGraphLaplacian to run a graph Laplacian dimensionality reduction.
  • Add SelectIntegrationFeatures5 to select integration features for v5 assays.
  • Add SelectSCTIntegrationFeatures to select SCT integration features.
  • Add SketchData to use sketching methods to downsample high-dimensional single-cell RNA expression data for help with scalability for large datasets.
  • Add TransferSketchLabels to transfer cell type labels from a sketched dataset to a full dataset based on the similarities in the lower-dimensional space.
  • Add UnSketchEmbeddings to transfer embeddings from sketched cells to the full data.
  • Add VST to apply a variance stabilizing transformation for selection of variable features.

Changes

  • Change FindTransferAnchors so that anchor filtering is not performed by default
  • Change merge so that layers will be added to a single Seurat object instead of combining raw count matrices
  • Deprecate slot parameter in favor of layers in accessor and set methods

Added

  • Add parallelization support with speed improvements for PrepSCTFindMarkers
  • Fix bug in LoadNanostring(#7566)

Changes

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)