Proximity Measure Based Diagnostics for Standard, Soft, and Multi-Way Clustering
Overview
Quantifies clustering quality by measuring both cohesion within clusters and separation between clusters. Implements advanced silhouette width computations for diverse clustering structures, including: simplified silhouette (Van der Laan et al., 2003) doi:10.1080/0094965031000136012, Probability of Alternative Cluster normalization methods (Raymaekers & Rousseeuw, 2022) doi:10.1080/10618600.2022.2050249, fuzzy clustering and silhouette diagnostics using membership probabilities (Campello & Hruschka, 2006; Menardi, 2011; Bhat & Kiruthika, 2024) doi:10.1016/j.fss.2006.07.006, doi:10.1007/s11222-010-9169-0, doi:10.1080/23737484.2024.2408534, and multi-way clustering extensions such as block and tensor clustering (Schepers et al., 2008; Bhat & Kiruthika, 2025) doi:10.1007/s00357-008-9005-9, doi:10.21203/rs.3.rs-6973596/v1. Provides tools for computation and visualization (Rousseeuw, 1987) doi:10.1016/0377-0427(87)90125-7 to support robust and reproducible cluster diagnostics across standard, soft, and multi-way clustering settings.
**New Features**
- Introduced new functions:
- **
getSilhouette()** Constructs a Silhouette class object directly from user-provided components without performing silhouette calculations. Allows users to build Silhouette objects when they already have cluster assignments, neighbor clusters, silhouette widths, and optional weights. - **
is.Silhouette()** Tests whether an object is of class "Silhouette" with optional strict validation. Checks both class inheritance and expected structure including required columns, attributes, and value ranges. - **
cerSilhouette()** Computes certainty silhouette widths for soft clustering using maximum posterior probabilities. Provides an alternative evaluation method for fuzzy clustering algorithms with support for crisp, fuzzy, and median averaging. - **
dbSilhouette()** Computes density-based silhouette widths using log-ratios of posterior probabilities based on Menardi (2011) method. Offers normalized silhouette evaluation for soft clustering with enhanced discrimination between cluster assignments. - **
calSilhouette()** Computes all available silhouette indices from the package functions and returns a comparative summary data frame. Automatically calculates crisp, fuzzy, and median silhouette values across different methods including proximity-based (medoid, pac), soft silhouette variations (pp_pac, pp_medoid, nlpp_pac, nlpp_medoid, pd_pac, pd_medoid), and probability-based methods (cer, db). Supports direct matrix input or clustering function output for streamlined comparative analysis.
Show all changes in 0.9.6Hide the rest of the changes in 0.9.6
**Improvements**
- Extended existing functions to support **median-based silhouette calculations** as an alternative to mean-based computations.
- Added new
averageattribute for existing Silhouette class supporting "crisp", "fuzzy", and "median" options. - Enhanced clustering evaluation capabilities with density-based and certainty-based statistical measures.
- Updated documentation to reflect new median calculation options and soft clustering methods.
- Enhanced
calSilhouette()to compute all combinations ofsoftSilhouette()methods (pp, nlpp, pd) with both pac and medoid approaches, providing comprehensive comparative analysis across 11 different silhouette computation methods.
Updated Dependencies
- **Imports**:
dplyr,ggplot2,ggpubr,lifecycle,methods,stats - **Suggests**:
proxy,ppclust,blockcluster,cluster,factoextra,drclust
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-06-09
- ERROR12 OK, 1 ERROR2026-06-08
- OK14 OK2026-03-10
Documentation
- Help pages
- 10 (1 internal)includes a package overview page
- Examples that run
- 56%5 run in a plain check (1 of them under a condition) · 4 only when donttest examples are enabled (R CMD check --as-cran)
- Exported functions with examples
- 100%
- Documented parameters
- 100%
- Return-value docs
- 100%
- Help pages citing references
- 60%
Downloads
Repository
- PRs merged (all time)
- 0%
- Median days to close, 50 most recently updated closed issues
- not measured
- Median days to close, 50 most recently updated closed PRs
- 0
7 development-tooling and community-health practices detected across 4 families in the upstream repository
Checks run against github.com/kskbhat/silhouette on 2026-10-21.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
GitHub Pages site last deployed 2026-07-08 · The repository has a site deploy workflow
pkgdown site last built 2026-07-08
This repository shows signs of AI coding tools.
- GitHub Copilotfirst seen 2025-08-28Pull request: opened by its own account
Dependencies
Code & Tests
People & History
Pick two releases to compare their code metrics.
- RR 4.6.0 released · 2026-04-24
- 0.9.6Latest2025-10-15 · current release · diff ↗ ·
added 5 exports
calSilhouette, cerSilhouette, dbSilhouette, getSilhouette, is.Silhouette - 0.9.42025-07-30
- RR 4.5.0 released · 2025-04-11
Package metadata
- First published
- 2025-07-30
- Total releases
- 2 / 1 yrs
- License
- GPL-2 OSI
- Minimum R
- ≥ 4.2.0
- Download size
- 338 KB
Cite
Cite this package
Run in R for the authors' entry:
citation("Silhouette")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.32614/cran.package.silhouette.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-24, which the citation names so these numbers can be found later. More on citing and the projects behind them.