Do tuning parameter (lambda) selection for sparse biclustering via BIC criterion

Description

We assume that both K and R are known. A range of values of lambda is usually considered - value that results in the lowest BIC is selected.

Usage

1
sparseBC.BIC(x, k, r, lambda)

Arguments

x

Data matrix; samples are rows and columns are features. Cannot contain missing values.

k

The number of row clusters, i.e., the number of clusters for the observations.

r

The number of column clusters, i.e., the number of clusters for the features.

lambda

A range of values of tuning parameters to be considered. All values must be non-negative.

Details

This implements the tuning parameter selection using BIC criterion for sparse biclustering as described in Section 5.2 in Tan and Witten (2014) 'Sparse biclustering of transposable data'. The BIC criterion is BIC = np x log(RSS) + np log(q) where RSS is the usual residual sum of squares, and q is the number of non-zero bicluster mean in the output of sparseBC. We select the value of lambda that leads to the smallest BIC.

The data is centered to have mean 0 in this function.

Value

lambda

Value of lambda that results in lowest BIC.

BIC

BIC values for a range of tuning parameters considered.

nonzeromus

Number of nonzero bicluster means for a range of tuning parameters considered.

Author(s)

Kean Ming Tan and Daniela Witten

References

KM Tan and D Witten (2014) Sparse biclustering of transposable data. Journal of Computational and Graphical Statistics 23(4):985-1008.

See Also

sparseBC sparseBC.choosekr

Examples

1
2
3
4
5
########### Create data matrix
x <- matrix(rnorm(20*30),nrow=20,ncol=30)

########### Perform sparseBC.BIC to select lambda
lambda<-sparseBC.BIC(x,k=2,r=2,lambda=c(0,10,20,30,40))$lambda