-
Notifications
You must be signed in to change notification settings - Fork 687
Description
What kind of feature would you like to request?
New analysis tool: A simple analysis tool you have been using and are missing in sc.tools?
Please describe your wishes
I would like to propose adding TAU as an additional clustering method in Scanpy, alongside existing methods such as Leiden and Louvain. TAU is a graph-based community detection algorithm implemented as a standalone Python package (tau_community_detection, available on PyPI). The goal would be to make it accessible through a Scanpy-native API so users can easily apply and benchmark it within standard Scanpy workflows.
This request is motivated by empirical results reported in the TAU paper, which show consistently higher modularity scores compared to Leiden/Louvain across a variety of benchmarks, including both synthetic graphs (e.g. LFR benchmarks) and real-world datasets. This suggests TAU could serve as a useful complementary clustering option for users interested in alternative optimization behavior, while preserving Scanpy’s existing clustering defaults.
To keep the maintenance burden low, TAU can be integrated as an optional dependency. If the dependency is missing, Scanpy could raise a clear error message instructing the user how to install it.
I’m happy to take responsibility for:
- maintaining API stability and compatibility on the TAU side
-preparing an implementation aligned with Scanpy’s style, CI, and testing conventions - adapting the TAU interface as needed to fit Scanpy’s design decisions