PermHclust.sigclust: 'SCBiclust' method for identifying hierarchically clustered...

View source: R/SC-HBiclust-SigClust.R

PermHclust.sigclustR Documentation

'SCBiclust' method for identifying hierarchically clustered biclusters

Description

'SCBiclust' method for identifying hierarchically clustered biclusters

Usage

PermHclust.sigclust(
  x = NULL,
  method = c("average", "complete", "single", "centroid"),
  wbound = sqrt(ncol(x)),
  alpha = 0.05,
  dat.perms = 1000,
  dissimilarity = c("squared.distance", "absolute.value"),
  silent = TRUE,
  sigstep = FALSE
)

Arguments

x

a dataset with n rows and p columns, with observations in rows.

method

method for agglomeration. See documentation in hclust. (default="average")

wbound

the tuning parameter for sparse hierarchical clustering. See documentation in HierarchicalSparseCluster. (default=sqrt(ncol(x)))

alpha

significance level for sigclust test.

dat.perms

number of Beta(\frac{1}{2}, (p-1)/2) distributed variables generated for each feature (default=1000)

dissimilarity

How should dissimilarity be calculated? (default is "squared.distance").

silent

should progress be printed? (default=TRUE)

sigstep

Should sigclust be used to assess the strength of identified clusters? (default=FALSE)

Details

Observations in the bicluster are identified such that they maximize the feature-weighted version of the dissimilarity matrix as implemented in HierarchicalSparseCluster. Features in the bicluster are identified based on their contribution to the clustering of the observations. #' This algoritm uses a numerical approximation to E(√{B}) where B \sim Beta(\frac{1}{2}, (p-1)/2) as the expected null distribution for feature weights.

Value

The function returns a S3-object with the following attributes:

  • which.x: A list of length num.bicluster with each list entry containing a logical vector denoting if the data observation is in the given bicluster.

  • which.y: A list of length num.bicluster with each list entry containing a logical vector denoting if the data feature is in the given bicluster.

Author(s)

Erika S. Helgeson, Qian Liu, Guanhua Chen, Michael R. Kosorok , and Eric Bair

Examples

test <- matrix(nrow=500, ncol=50)
theta <- rep(NA, 500)
theta[1:300] <- runif(300, 0, pi)
theta[301:500] <- runif(200, pi, 2*pi)
test[1:300,seq(from=2,to=40,by=2)] <- -2+5*sin(theta[1:300])
test[301:500,seq(from=2,to=40,by=2)] <- 5*sin(theta[301:500])
test[1:300,seq(from=1,to=39,by=2)] <- 5+5*cos(theta[1:300])
test[301:500,seq(from=1,to=39,by=2)] <- 5*cos(theta[301:500])
test[,1:40] <- test[,1:40] + rnorm(40*500, 0, 0.2)
test[,41:50] <- rnorm(10*500, 0, 1)
test.PermBiclust <- PermHclust.sigclust(x=test, method='single', dissimilarity='squared.distance')

SCBiclust documentation built on June 10, 2022, 1:06 a.m.