runMDS {scater} | R Documentation

## Perform MDS on cell-level data

### Description

Perform multi-dimensional scaling (MDS) on cells, based on the data in a SingleCellExperiment object.

### Usage

    runMDS(object, ncomponents = 2, ntop = 500, feature_set = NULL,
      exprs_values = "logcounts", scale_features = TRUE, use_dimred = NULL,
      n_dimred = NULL, method = "euclidean")

### Arguments

`object` | A SingleCellExperiment object.
`ncomponents` | Numeric scalar indicating the number of MDS dimensions to obtain.
`ntop` | Numeric scalar specifying the number of most variable features to use for MDS.
`feature_set` | Character vector of row names, a logical vector or a numeric vector of indices indicating a set of features to use for MDS. This will override any `ntop` argument if specified.
`exprs_values` | Integer scalar or string indicating which assay of `object` should be used to obtain the expression values for the calculations.
`scale_features` | Logical scalar, should the expression values be standardised so that each feature has unit variance?
`use_dimred` | String or integer scalar specifying the entry of `reducedDims(object)` to use as input to `cmdscale`. Default is to not use existing reduced dimension results.
`n_dimred` | Integer scalar, number of dimensions of the reduced dimension slot to use when `use_dimred` is supplied. Defaults to all available dimensions.
`method` | String specifying the type of distance to be computed between cells.

### Details

The function `cmdscale` is used internally to compute the multidimensional scaling components to plot.

Setting `use_dimred` allows users to easily perform MDS on low-rank approximations of the original expression matrix (e.g., after PCA). In such cases, arguments such as `ntop`, `feature_set`, `exprs_values` and `scale_features` will be ignored.

### Value

A SingleCellExperiment object containing the coordinates of the first `ncomponent` MDS dimensions for each cell. This is stored in the `"MDS"` entry of the `reducedDims` slot.

### Author(s)

Aaron Lun, based on code by Davis McCarthy

### See Also

`cmdscale`, `plotMDS`

### Examples

    ## Set up an example SingleCellExperiment
    data("sc_example_counts")
    data("sc_example_cell_info")
    example_sce <- SingleCellExperiment(
        assays = list(counts = sc_example_counts),
        colData = sc_example_cell_info
    )
    example_sce <- normalize(example_sce)

    example_sce <- runMDS(example_sce)
    reducedDimNames(example_sce)
    head(reducedDim(example_sce))

[Package scater version 1.8.4 Index]