scikit-learn-contrib/hdbscan

A high performance implementation of HDBSCAN clustering.

View on GitHub ↗Jump to charts ↓Open shareable report →

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Added to GitGenius on September 22nd, 2026
Created on April 22nd, 2015
Open Issues & Pull Requests: 388 (+0)
GitHub issues: Enabled
Number of forks: 537
Total Stargazers: 3,150 (+0)
Total Subscribers: 52 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 30.7 hours
Mean response time: 107.0 days
90th percentile: 166.1 days
Tracked items: 30

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 29
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 948 days
Stale 30+ days: 29
Stale 90+ days: 26

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

HDBSCAN is a clustering algorithm implementation that provides high-performance density-based clustering for machine learning applications.

The tool solves the problem of identifying clusters in data where traditional methods like k-means struggle with non-convex shapes and varying cluster densities. HDBSCAN extends the DBSCAN algorithm by building a hierarchical structure of clusters, allowing it to extract a flat clustering from the hierarchy. This approach makes it effective for discovering clusters of arbitrary shape and size without requiring the user to specify the number of clusters in advance. The implementation emphasizes performance, making it practical for larger datasets where computational efficiency matters.

HDBSCAN suits projects where you need to discover cluster structure without prior knowledge of how many clusters exist, particularly when clusters may have different densities or irregular shapes. It works well for exploratory data analysis and situations where you want to identify noise points or outliers as part of the clustering process. The tool integrates with the scikit-learn ecosystem, making it a natural choice for workflows already built around that framework. It is not designed for cases where you need to specify cluster count upfront or when you require the simplicity and speed of centroid-based methods on well-separated, roughly spherical clusters.

Development on the project shows consistent engagement with bug fixes and maintenance across releases. The maintainers respond to issues and pull requests, indicating active stewardship of the codebase. Documentation is maintained through a dedicated documentation site, suggesting commitment to helping users understand and apply the algorithm. The project accepts community contributions and integrates improvements from external developers. Updates address both performance optimizations and correctness issues, reflecting attention to the tool's core reliability.