Learn R Programming

s4vd (version 1.1-1)

BCs4vd: Robust biclustering by sparse singular value decomposition incorporating stability selection

Description

The function performs biclustering of the data matrix by sparse singular value decomposition with nested stability selection.

Usage

"biclust"(x, method=BCs4vd(), steps = 100, pcerv = 0.05, pceru = 0.05, ss.thr = c(0.6,0.65), size = 0.632, gamm = 0, iter = 100, nbiclust = 10, merr = 10^(-4), cols.nc=FALSE, rows.nc=TRUE, row.overlap=TRUE, col.overlap=TRUE, row.min=4, col.min=4, pointwise=TRUE, start.iter=0, savepath=FALSE)

Arguments

x
The matrix to be clustered.
method
calls the BCs4vd() method
steps
Number of subsamples used to perform the stability selection.
pcerv
Per comparsion wise error rate to control the number of falsely selected right singular vector coefficients (columns/samples).
pceru
Per comparsion wise error rate to control the number of falsely selected left singular vector coefficients (rows/genes).
ss.thr
Range of the cutoff threshold (relative selection frequency) for the stability selection.
size
Size of the subsamples used to perform the stability selection.
gamm
Weight parameter for the adaptive LASSO, nonnegative constant (default = 0, LASSO).
iter
Maximal number of iterations to fit a single bicluster.
nbiclust
Maximal number of biclusters.
merr
Threshold to decide convergence.
cols.nc
Allow for negative correlation of columns (samples) over rows (genes).
rows.nc
Allow for negative correlation of rows (genes) over columns (samples).
row.overlap
Allow rows to overlap between biclusters.
col.overlap
Allow columns to overlap between biclusters.
row.min
Minimal number of rows.
col.min
Minimal number of columns.
pointwise
If TRUE performs a fast pointwise stability selection instead of calculating the complete stability path.
start.iter
Number of starting iterations in which the algorithm is not allowed to converge.
savepath
Saves the stability path in order plot the path with the stabpathplot function. Note that pointwise needs to be TRUE to save the path. For extreme high dimensional data sets (e.g. the lung cancer example) the resulting biclust object may exceed the available memory.

Value

Returns an object of class Biclust.

References

Martin Sill, Sebastian Kaiser, Axel Benner and Annette Kopp-Schneider "Robust biclustering by sparse singular value decomposition incorporating stability selection", Bioinformatics, 2011

See Also

biclust, Biclust

Examples

Run this code

# example data set according to the simulation study in Lee et al. 2010
# generate artifical data set and a correspondig biclust object
u <- c(10,9,8,7,6,5,4,3,rep(2,17),rep(0,75))
v <- c(10,-10,8,-8,5,-5,rep(3,5),rep(-3,5),rep(0,34))
u <- u/sqrt(sum(u^2)) 
v <- v/sqrt(sum(v^2))
d <- 50
set.seed(1)
X <- (d*u%*%t(v)) + matrix(rnorm(100*50),100,50)
params <- info <- list()
RowxNumber <- matrix(rep(FALSE,100),ncol=1)
NumberxCol <- matrix(rep(FALSE,50),nrow=1)
RowxNumber[u!=0,1] <- TRUE 
NumberxCol[1,v!=0] <- TRUE
Number <- 1
ressim <- BiclustResult(params,RowxNumber,NumberxCol,Number,info)

#perform s4vd biclustering 
ress4vd <- biclust(X,method=BCs4vd,pcerv=0.5,pceru=0.5,pointwise=FALSE,nbiclust=1,savepath=TRUE)
#perform s4vd biclustering with fast pointwise stability selection
ress4vdpw <- biclust(X,method=BCs4vd,pcerv=0.5,pceru=0.5,pointwise=TRUE,nbiclust=1)
#perform ssvd biclustering
resssvd <- biclust(X,BCssvd,K=1)
#agreement of the results with the simulated bicluster
jaccardind(ressim,ress4vd)
jaccardind(ressim,ress4vdpw)
jaccardind(ressim,resssvd)

Run the code above in your browser using DataLab