DASC: Detecting hidden batch factors through data adaptive...

View source: R/DASC.R

DASCR Documentation

Detecting hidden batch factors through data adaptive shrinkage and clustering (DASC)

Description

Detecting hidden batch factors through data adaptive shrinkage and clustering (DASC)

Batch factor detection via DASC (Data-adaptive Shrinkage and Clustering-DASC)

Usage

DASC(edata, pdata, factor, method = "ama", type = 3, lambda, rank, nrun,
  spanning = FALSE, annotation)

Arguments

edata

the normalized target matrix, a data.frame The row is gene, the column is sample

pdata

Phenotypic data summarizes information about the samples

factor

A factor vector which controls the convex clustering

method

Algorithm to use: 'admm' or 'ama'

type

An integer indicating the norm used: 1 = 1-norm 2 = 2-norm 3 = 2-norm^2

lambda

A double number A regularization parameter in the convex optimization

rank

integer sequence

nrun

the iteration numbers of Semi-NMF

spanning

parameter is assigned as false

annotation

An annotation of the dataset

Details

The DASC function is the main function of our algorithm DASC (Data-adaptive Shrinkage and Clustering-DASC) package. The DASC includes two main steps

  • Data-adaptive shrinkage using convex clustering shrinkage (Implemented by convex optimization.);

  • Extract batch factors using matrix factorization.

Value

outputs the result of semi-NMF. It classifies each sample to its batch factor.

Author(s)

Haidong Yi, Ayush T. Raman

Haidong Yi, Ayush T. Raman

See Also

cvxclust_path_ama and cvxclust_path_admm for the detailed algorithm

Examples

library(NMF)
library(cvxclustr)
library(Biobase)
dat <- data.frame(matrix(rnbinom(n=200, mu=100, size=1/0.5), ncol=4))
pdat <- data.frame(sample = colnames(dat), type = c(rep('A',2), rep('B',2)))
rownames(pdat) <- colnames(dat)
res <- DASC(edata=dat, pdata=pdat, factor=pdat$type, method='ama', type=3,
lambda = 1, rank = 2, nrun = 50, spanning = FALSE,
annotation='simulated dataset')


aayushraman/DASC documentation built on May 9, 2023, 12:03 a.m.