Learn R Programming

Seurat (version 3.0.1)

RunALRA: Run Adaptively-thresholded Low Rank Approximation (ALRA)

Description

Runs ALRA, a method for imputation of dropped out values in scRNA-seq data. Computes the k-rank approximation to A_norm and adjusts it according to the error distribution learned from the negative values. Described in Linderman, G. C., Zhao, J., Kluger, Y. (2018). "Zero-preserving imputation of scRNA-seq data using low rank approximation." (bioRxiv:138677)

Usage

RunALRA(object, ...)

# S3 method for default RunALRA(object, k = NULL, q = 10, ...)

# S3 method for Seurat RunALRA(object, k = NULL, q = 10, assay = NULL, slot = "data", setDefaultAssay = TRUE, genes.use = NULL, K = NULL, p.val.th = 1e-10, noise.start = NULL, q.k = 2, k.only = FALSE, ...)

Arguments

object

An object

...

Arguments passed to other methods

k

The rank of the rank-k approximation. Set to NULL for automated choice of k.

q

The number of additional power iterations in randomized SVD when computing rank k approximation. By default, q=10.

assay

Assay to use

slot

slot to use

setDefaultAssay

If TRUE, will set imputed results as default Assay

genes.use

genes to impute

K

Number of singular values to compute when choosing k. Must be less than the smallest dimension of the matrix. Default 100 or smallest dimension.

p.val.th

The threshold for ''significance'' when choosing k. Default 1e-10.

noise.start

Index for which all smaller singular values are considered noise. Default K - 20.

q.k

Number of additional power iterations when choosing k. Default 2.

k.only

If TRUE, only computes optimal k WITHOUT performing ALRA

References

Linderman, G. C., Zhao, J., Kluger, Y. (2018). "Zero-preserving imputation of scRNA-seq data using low rank approximation." (bioRxiv:138677)

See Also

ALRAChooseKPlot

Examples

Run this code
# NOT RUN {
pbmc_small
# Example 1: Simple usage, with automatic choice of k.
pbmc_small_alra <- RunALRA(object = pbmc_small)
# }
# NOT RUN {
# Example 2: Visualize choice of k, then run ALRA
# First, choose K
pbmc_small_alra <- RunALRA(pbmc_small, k.only=TRUE)
# Plot the spectrum, spacings, and p-values which are used to choose k
ggouts <- ALRAChooseKPlot(pbmc_small_alra)
do.call(gridExtra::grid.arrange, c(ggouts, nrow=1))
# Run ALRA with the chosen k
pbmc_small_alra <- RunALRA(pbmc_small_alra)
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab