Learn R Programming

jackstraw (version 1.3.17)

jackstraw_pam: Non-Parametric Jackstraw for Partitioning Around Medoids (PAM)

Description

Test the cluster membership for Partitioning Around Medoids (PAM)

Usage

jackstraw_pam(
  dat,
  pam.dat,
  s = NULL,
  B = NULL,
  center = TRUE,
  covariate = NULL,
  verbose = FALSE,
  pool = TRUE,
  ...
)

Value

jackstraw_pam returns a list consisting of

F.obs

m observed F statistics between variables and cluster medoids.

F.null

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

p.F

m p-values of membership.

Arguments

dat

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

pam.dat

an output from applying cluster::pam() on dat.

s

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

B

a number of resampling iterations.

center

a logical specifying to center the rows. By default, TRUE.

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.

pool

a logical specifying to pool the null statistics across all clusters. By default, TRUE.

...

optional arguments to control the k-means clustering algorithm (refers to kmeans).

Author

Neo Christopher Chung nchchung@gmail.com

Details

PAM assigns 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.

For a large dataset, PAM could be too slow. Consider using cluster::clara and jackstraw::jackstraw_clara.

The input data (dat) must be of a class `matrix`.

References

Chung (2020) Statistical significance of cluster membership for unsupervised evaluation of cell identities. Bioinformatics, 36(10): 3107–3114 tools:::Rd_expr_doi("10.1093/bioinformatics/btaa087")

Examples

Run this code
if (FALSE) {
library(cluster)
dat = t(scale(t(Jurkat293T), center=TRUE, scale=FALSE))
pam.dat <- pam(dat, k=2)
jackstraw.out <- jackstraw_pam(dat, pam.dat = pam.dat)
}

Run the code above in your browser using DataLab