Perform Monothetic Clustering with Extensions to Circular Data

Implementation of the Monothetic Clustering algorithm (Chavent, 1998 ) on continuous data sets. A lot of extensions are included in the package, including applying Monothetic clustering on data sets with circular variables, visualizations with the results, and permutation and cross-validation based tests to support the decision on the number of clusters.


monoClust

Travis buildstatus CRANstatus metacrandownloads Lifecycle:stable R-CMD-check Codecov testcoverage

Implementation of the Monothetic Clustering algorithm on continuous data set. A lot of extensions are included in the package, including applying Monothetic clustering on data set with circular variables, visualizations with the results, and permutation and cross-validation based tests to support the decision on the number of clusters.

The package performs Monothetic clustering on numerical variables only data. The extended features include clustering on one circular variable, limiting the sets of splitting variables. There are also S3 functions such as print and plot that works for MonoClust output object.

Installation

You can install the released version of monoClust from CRAN with:

install.packages("monoClust")

And the development version from GitHub with:

# install.packages("remotes")
remotes::install_github("vinhtantran/monoClust")

Example

This is a basic example which shows you how to solve a common problem:

library(monoClust)
library(cluster)
data(ruspini)
ruspini4sol <- MonoClust(ruspini, nclusters = 4)
ruspini4sol
#> n = 75 
#> 
#> Node) Split, N, Cluster Inertia, Proportion Inertia Explained,  
#>       * denotes terminal node
#> 
#> 1) root 75 244373.900 0.6344215   
#>   2) y < 91 35  43328.460 0.9472896   
#>     4) x < 37 20   3689.500   *
#>     5) x >= 37 15   1456.533   *
#>   3) y >= 91 40  46009.380 0.7910436   
#>     6) x < 63.5 23   3176.783   *
#>     7) x >= 63.5 17   4558.235   *
#> 
#> Note: One or more of the splits chosen had an alternative split that reduced inertia by the same amount. See "alt" column of "frame" object for details.

Plotting MonoClust tree:

plot(ruspini4sol)

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("monoClust")

1.2.1 by Tan Tran, 6 years ago


https://vinhtantran.github.io/monoClust/, https://github.com/vinhtantran/monoClust


Report a bug at https://github.com/vinhtantran/monoClust/issues


Browse source code at https://github.com/cran/monoClust


Authors: Tan Tran [aut, cre] , Brian McGuire [aut] , Mark Greenwood [aut]


Documentation:   PDF Manual  


GPL (>= 2) license


Imports cluster, doParallel, dplyr, foreach, ggplot2, graphics, grDevices, parallel, permute, purrr, rlang, stats, stringr, tibble, tidyr

Suggests knitr, mice, rmarkdown, covr, testthat


Imported by puls.


See at CRAN