BCs4vd {s4vd} | R Documentation |
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
## S4 method for signature 'matrix,BCs4vd'
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
.
Author(s)
Martin Sill \ m.sill@dkfz.de
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
Examples
# 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)