Learn R Programming

jackstraw (version 1.2)

jackstraw_cluster: Jackstraw for the User-Defined Clustering Algorithm

Description

Test the cluster membership using a user-defined clustering algorithm

Usage

jackstraw_cluster(dat, k, cluster = NULL, centers = NULL,
  algorithm = function(x, centers) kmeans(x, centers, ...), s = 1,
  B = 1000, noise = NULL, covariate = NULL, verbose = FALSE,
  seed = NULL, ...)

Arguments

dat

a data matrix with m rows as variables and n columns as observations.

k

a number of clusters.

cluster

a vector of cluster assignments.

centers

a matrix of all cluster centers.

algorithm

a clustering algorithm to use, where an output must include `cluster` and `centers`. For exact specification, see kmeans.

s

a number of ``synthetic'' null variables. Out of m variables, s variables are independently permuted.

B

a number of resampling iterations.

noise

specify a parametric distribution to generate a noise term. If NULL, a non-parametric jackstraw test is performed.

covariate

a model matrix of covariates with n observations. Must include an intercept in the first column.

verbose

a logical specifying to print the computational progress. By default, FALSE.

seed

a seed for the random number generator.

...

optional arguments to control the clustering algorithm.

Value

jackstraw_cluster returns a list consisting of

F.obs

m observed F statistics between variables and cluster centers.

F.null

F null statistics between null variables and cluster centers, from the jackstraw method.

p.F

m p-values of membership.

Details

The clustering algorithms assign m rows into K clusters. This function enable statistical evaluation if the cluster membership is correctly assigned. Each of m p-values refers to the statistical test of that row with regard to its assigned cluster. Its resampling strategy accounts for the over-fitting characteristics due to direct computation of clusters from the observed data and protects against an anti-conservative bias.

The user is expected to explore the data with a given clustering algorithm and determine the number of clusters k. Furthermore, provide cluster and centers as given by applying algorithm onto dat. The rows of centers correspond to k clusters, as well as available levels in cluster. This function allows you to specify a parametric distribution of a noise term. It is an experimental feature.

References

Chung (2018) Statistical significance for cluster membership. biorxiv, doi:10.1101/248633 https://www.biorxiv.org/content/early/2018/01/16/248633