SpectralClusterFeatureSelection: Conducts spectral clustering followed by feature selection...

Description Usage Arguments Value References Examples

View source: R/clust_functions.R

Description

This function implements the main algorithm of SCFS.

It conducts clustering by the following steps:

1. conducts spectral clustering to obtain initial guess of cluster assignments.

2. uses the initial guess to compute R^2 and select informative features.

3. conducts spectral clustering again (SCFS1) followed by Lloyd iteration (optionally for SCFS2).

Usage

1
SpectralClusterFeatureSelection(data, num_clusters, init_cluster_ids, use_lloyd_iteration)

Arguments

data

matrix. Input data matrix for clustering.

num_clusters

int. Number of clusters.

init_cluster_ids

vector. The initial clusters assignment. If NULL, the initial guess will be obtained by spectral clustering. Otherwise, step 1 is skipped and the feature selection will be applied based on the initial guess.

use_lloyd_iteration

bool. If TRUE, conduct Lloyd iteration at step 3. Otherwise, no Lloyd iteration.

Value

A list containing two attributes: $cluster_ids and $info_feat_ids, where $cluster_ids contains the estimated cluster assignments and $info_feat_ids contains the selected feature indices.

References

T. Liu, Y. Lu, B. Zhu, H. Zhao (2021). High-dimensional Clustering via Feature Selection with Applications to Single Cell RNA-seq Data.

Examples

1
2
synthetic_data <- GenerateSyntheticData(n=10, p=10, s=5, k=2, signal_strength=1, noise_type="gaussian")
scfs <- SpectralClusterFeatureSelection(data=synthetic_data$data, num_clusters=2, init_cluster_ids=NULL, use_lloyd_iteration=FALSE)

TerenceLiu4444/SCFS documentation built on Feb. 13, 2022, 9:18 a.m.