Resistant Clustering via Chopping Up Mutual Reachability Minimum Spanning Trees
Overview
Implements a fast and resistant divisive clustering algorithm which identifies a specified number of clusters: 'lumbermark' iteratively chops off sizeable limbs that are joined by protruding segments of a dataset's mutual reachability minimum spanning tree (Gagolewski, 2026 DOI:10.48550/arXiv.2604.07143). The use of a mutual reachability distance pulls peripheral points farther away from each other. It is a viable alternative to the 'HDBSCAN*' algorithm and can be viewed as a divisive version of Genie. The resulting partitions of different granularities are properly nested. When combined with the 'deadwood' package, it can act as an outlier detector. The 'Python' version of 'lumbermark' is available via 'PyPI'.
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK14 OK2026-04-22
- ERROR13 OK, 1 ERROR2026-04-18
- OK5 OK2026-03-17
Documentation
- Help pages
- 2 (1 internal)includes a package overview page
- Examples that run
- 100%1 run in a plain check
- Exported functions with examples
- 100%
- Documented parameters
- 100%
- Return-value docs
- 100%
- Help pages citing references
- 50%
Downloads
Repository
Releases over time
Commits over time
5 development-tooling and community-health practices detected across 4 families in the upstream repository
Checks run against github.com/gagolews/lumbermark on 2026-10-21.
The R CMD check workflow runs on Linux
GitHub Pages site last deployed 2026-10-01
Dependencies
Installing lumbermark adds 3 packages (3 with compiled code, 1.9 MB of source tarballs). Heaviest: Rcpp 1.8 MB, quitefastmst 42 KB, deadwood 32 KB.
Code & Tests
People & History
Pick two releases to compare their code metrics.
- 0.9.1Latest
- RR 4.6.0 released · 2026-04-24
- 0.9.02026-03-16
- RR 4.5.0 released · 2025-04-11
Package metadata
- First published
- 2026-03-16
- Total releases
- 2 / 1 yrs
- License
- AGPL-3 OSI
- Download size
- 13 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("lumbermark")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-23, which the citation names so these numbers can be found later. More on citing and the projects behind them.