Learn R Programming

Seurat (version 3.1.4)

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, quantile.prob = 0.001, use.mkl = FALSE, mkl.seed = -1, ... )

# S3 method for Seurat RunALRA( object, k = NULL, q = 10, quantile.prob = 0.001, use.mkl = FALSE, mkl.seed = -1, assay = NULL, slot = "data", setDefaultAssay = TRUE, genes.use = NULL, K = NULL, thresh = 6, 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.

quantile.prob

The quantile probability to use when calculating threshold. By default, quantile.prob = 0.001.

use.mkl

Use the Intel MKL based implementation of SVD. Needs to be installed from https://github.com/KlugerLab/rpca-mkl. Note: this requires the SeuratWrappers implementation of RunALRA

mkl.seed

Only relevant if use.mkl = TRUE. Set the seed for the random generator for the Intel MKL implementation of SVD. Any number <0 will use the current timestamp. If use.mkl = FALSE, set the seed using set.seed() function as usual.

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.

thresh

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