mlr-org / mlr3cluster

Cluster analysis for mlr3
https://mlr3cluster.mlr-org.com
GNU Lesser General Public License v3.0
21 stars 6 forks source link
cluster-analysis clustering mlr3 r r-package

mlr3cluster

Package website: release | dev

Cluster analysis for mlr3.

r-cmd-check CRAN
status StackOverflow Mattermost

mlr3cluster is an extension package for cluster analysis within the mlr3 ecosystem. It is a successor of clustering capabilities of mlr2.

Installation

Install the last release from CRAN:

install.packages("mlr3cluster")

Install the development version from GitHub:

# install.packages("pak")
pak::pak("mlr-org/mlr3cluster")

Feature Overview

The current version of mlr3cluster contains:

Also, the package is integrated with mlr3viz which enables you to create great visualizations with just one line of code!

Cluster Analysis

Cluster Learners

Key Label Packages
clust.MBatchKMeans Mini Batch K-Means ClusterR
clust.SimpleKMeans K-Means (Weka) RWeka
clust.agnes Agglomerative Hierarchical Clustering cluster
clust.ap Affinity Propagation Clustering apcluster
clust.cmeans Fuzzy C-Means Clustering Learner e1071
clust.cobweb Cobweb Clustering RWeka
clust.dbscan Density-Based Clustering dbscan
clust.dbscan_fpc Density-Based Clustering with fpc fpc
clust.diana Divisive Hierarchical Clustering cluster
clust.em Expectation-Maximization Clustering RWeka
clust.fanny Fuzzy Analysis Clustering cluster
clust.featureless Featureless Clustering
clust.ff Farthest First Clustering RWeka
clust.hclust Agglomerative Hierarchical Clustering stats
clust.hdbscan HDBSCAN Clustering dbscan
clust.kkmeans Kernel K-Means kernlab
clust.kmeans K-Means stats, clue
clust.mclust Gaussian Mixture Models Clustering mclust
clust.meanshift Mean Shift Clustering LPCM
clust.optics OPTICS Clustering dbscan
clust.pam Partitioning Around Medoids cluster
clust.xmeans X-means RWeka

Cluster Measures

Key Label Packages
clust.ch Calinski Harabasz fpc
clust.dunn Dunn fpc
clust.silhouette Silhouette cluster
clust.wss Within Sum of Squares fpc

Example

library(mlr3)
library(mlr3cluster)

task = tsk("usarrests")
learner = lrn("clust.kmeans")
learner$train(task)
prediction = learner$predict(task = task)

More Resources

Check out the blogpost for a more detailed introduction to the package. Also, mlr3book has a section on clustering.

Future Plans

If you have any questions, feedback or ideas, feel free to open an issue here.