Compare clustering methods

compare_clustering_methods(mat, method = setdiff(all_clustering_methods(), "mclust"),
    plot_type = c("mixed", "heatmap"), nrow = 3, verbose = TRUE)

Arguments

mat

The similarity matrix.

method

Which methods to compare. All available methods are in all_clustering_methods. A value of all takes all available methods. By default mclust is excluded because its long runtime.

plot_type

See explanation in cmp_make_plot.

nrow

Number of rows of the layout when plot_type is set to heatmap.

verbose

Whether to print messages.

Details

The function compares following clustering methods by default:

kmeans

see cluster_by_kmeans.

pam

see cluster_by_pam.

dynamicTreeCut

see cluster_by_dynamicTreeCut.

mclust

see cluster_by_mclust. By default it is not included.

apcluster

see cluster_by_apcluster.

hdbscan

see cluster_by_hdbscan.

fast_greedy

see cluster_by_igraph.

louvain

see cluster_by_igraph.

walktrap

see cluster_by_igraph.

MCL

see cluster_by_MCL.

binary_cut

see binary_cut.

This functon is basically a wrapper function. It calls the following two functions:

Value

No value is returned.

Examples

# \dontrun{
mat = readRDS(system.file("extdata", "random_GO_BP_sim_mat.rds",
    package = "simplifyEnrichment"))
compare_clustering_methods(mat)
#> Cluster 500 terms by 'binary_cut'...
#>  19 clusters, used 0.991991 secs.
#> Cluster 500 terms by 'kmeans'...
#>  13 clusters, used 3.203729 secs.
#> Cluster 500 terms by 'pam'...
#>  5 clusters, used 18.79954 secs.
#> Cluster 500 terms by 'dynamicTreeCut'...
#>  60 clusters, used 0.591217 secs.
#> Cluster 500 terms by 'apcluster'...
#>  41 clusters, used 0.6133909 secs.
#> Cluster 500 terms by 'hdbscan'...
#>  14 clusters, used 0.1643701 secs.
#> Cluster 500 terms by 'fast_greedy'...
#>  6 clusters, used 0.0671351 secs.
#> Cluster 500 terms by 'louvain'...
#>  6 clusters, used 0.06991601 secs.
#> Cluster 500 terms by 'walktrap'...
#>  6 clusters, used 0.3313968 secs.
#> Cluster 500 terms by 'MCL'...
#>  6 clusters, used 1.677256 secs.

compare_clustering_methods(mat, plot_type = "heatmap")
#> Cluster 500 terms by 'binary_cut'...
#>  19 clusters, used 0.959554 secs.
#> Cluster 500 terms by 'kmeans'...
#>  18 clusters, used 3.126805 secs.
#> Cluster 500 terms by 'pam'...
#>  5 clusters, used 18.52793 secs.
#> Cluster 500 terms by 'dynamicTreeCut'...
#>  60 clusters, used 0.1349771 secs.
#> Cluster 500 terms by 'apcluster'...
#>  41 clusters, used 0.6351449 secs.
#> Cluster 500 terms by 'hdbscan'...
#>  14 clusters, used 0.1666269 secs.
#> Cluster 500 terms by 'fast_greedy'...
#>  6 clusters, used 0.07164907 secs.
#> Cluster 500 terms by 'louvain'...
#>  6 clusters, used 0.08043909 secs.
#> Cluster 500 terms by 'walktrap'...
#>  6 clusters, used 0.3124349 secs.
#> Cluster 500 terms by 'MCL'...
#>  6 clusters, used 1.638831 secs.

# }