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

View source: R/alra.R

RunALRAR Documentation

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, ...)

## Default S3 method:
RunALRA(
  object,
  k = NULL,
  q = 10,
  quantile.prob = 0.001,
  use.mkl = FALSE,
  mkl.seed = -1,
  ...
)

## S3 method for class '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.

mkl.seed

Only relevant if use.mkl=T. 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=F, 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.

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

p.val.th

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

Author(s)

Jun Zhao, George Linderman

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

## Not run: 
pbmc_small
# Example 1: Simple usage, with automatic choice of k.
pbmc_small_alra <- RunALRA(object = pbmc_small)
# 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)

## End(Not run)


satijalab/seurat-wrappers documentation built on April 10, 2024, 3:25 p.m.