Skip to main content

Python package for systematic assessment of clustering results stability on single-cell data.

Project description

# ClustAssessPy

[![Downloads](https://static.pepy.tech/badge/ClustAssessPy)](https://pepy.tech/project/ClustAssessPy) [![Downloads](https://static.pepy.tech/badge/ClustAssessPy/week)](https://pepy.tech/project/ClustAssessPy)

ClustAssessPy offers a data-driven approach for optimizing parameter values across all stages of graph-based community detection clustering in single-cell datasets. This Python package is a lighter adaptation of ClustAssess (R) [1], incorporating its main functions and can be used by the Scanpy community to guide robust clustering through data-driven selection in all community detection clustering steps:

  • Dimensionality Reduction: Selection of the base embedding (UMAP vs PCA) and the number and type of features (e.g., highly-variable vs most abundant).

  • Graph Type: Choice of graph type for the adjacency matrix (nearest neighbors vs shared nearest neighbors) and the number of neighbors.

  • Clustering: Identification of the most stable algorithm (Leiden or Louvain) and the appropriate resolution value.

## Installation

ClustAssessPy requires Python 3.7 or newer.

### Dependencies

  • numpy

  • pandas

  • scanpy

  • umap-learn

  • seaborn

  • matplotlib

  • scipy

  • networkx

  • plotnine

  • pynndescent

  • leidenalg

  • louvain

  • igraph

### User Installation

We recommend that you download ClustAssessPy on a virtual environment (venv or Conda).

`sh pip install ClustAssessPy `

## Getting Started

Documentation for the main functions is available [here](https://core-bioinformatics.github.io/ClustAssessPy/ClustAssessPy.html). For a detailed tutorial, click [here](https://github.com/Core-Bioinformatics/ClustAssessPy/blob/main/Examples/tutorial_cuomo.ipynb).

## References

[1] Shahsavari, A., Munteanu, A., & Mohorianu, I. (2022). ClustAssess: Tools for Assessing the Robustness of Single-Cell Clustering. https://doi.org/10.1101/2022.01.31.478592

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clustassesspy-1.0.1.tar.gz (1.0 MB view hashes)

Uploaded Source

Built Distributions

ClustAssessPy-1.0.1-pp310-pypy310_pp73-win_amd64.whl (92.6 kB view hashes)

Uploaded PyPy Windows x86-64

ClustAssessPy-1.0.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (128.7 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (135.7 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl (92.8 kB view hashes)

Uploaded PyPy macOS 11.0+ ARM64

ClustAssessPy-1.0.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (97.1 kB view hashes)

Uploaded PyPy macOS 10.15+ x86-64

ClustAssessPy-1.0.1-pp39-pypy39_pp73-win_amd64.whl (92.5 kB view hashes)

Uploaded PyPy Windows x86-64

ClustAssessPy-1.0.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (128.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (135.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl (92.7 kB view hashes)

Uploaded PyPy macOS 11.0+ ARM64

ClustAssessPy-1.0.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl (97.1 kB view hashes)

Uploaded PyPy macOS 10.15+ x86-64

ClustAssessPy-1.0.1-pp38-pypy38_pp73-win_amd64.whl (92.4 kB view hashes)

Uploaded PyPy Windows x86-64

ClustAssessPy-1.0.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (128.9 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (135.7 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-pp38-pypy38_pp73-macosx_11_0_arm64.whl (92.8 kB view hashes)

Uploaded PyPy macOS 11.0+ ARM64

ClustAssessPy-1.0.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (97.0 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

ClustAssessPy-1.0.1-pp37-pypy37_pp73-win_amd64.whl (92.2 kB view hashes)

Uploaded PyPy Windows x86-64

ClustAssessPy-1.0.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (129.5 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (136.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (96.5 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

ClustAssessPy-1.0.1-cp312-cp312-win_amd64.whl (93.8 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

ClustAssessPy-1.0.1-cp312-cp312-win32.whl (86.5 kB view hashes)

Uploaded CPython 3.12 Windows x86

ClustAssessPy-1.0.1-cp312-cp312-musllinux_1_2_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ x86-64

ClustAssessPy-1.0.1-cp312-cp312-musllinux_1_2_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ i686

ClustAssessPy-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (133.9 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (139.6 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-cp312-cp312-macosx_11_0_arm64.whl (94.8 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

ClustAssessPy-1.0.1-cp312-cp312-macosx_10_9_x86_64.whl (98.1 kB view hashes)

Uploaded CPython 3.12 macOS 10.9+ x86-64

ClustAssessPy-1.0.1-cp311-cp311-win_amd64.whl (93.5 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

ClustAssessPy-1.0.1-cp311-cp311-win32.whl (86.1 kB view hashes)

Uploaded CPython 3.11 Windows x86

ClustAssessPy-1.0.1-cp311-cp311-musllinux_1_2_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

ClustAssessPy-1.0.1-cp311-cp311-musllinux_1_2_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ i686

ClustAssessPy-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (134.8 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (139.0 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-cp311-cp311-macosx_11_0_arm64.whl (96.3 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

ClustAssessPy-1.0.1-cp311-cp311-macosx_10_9_x86_64.whl (99.5 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

ClustAssessPy-1.0.1-cp310-cp310-win_amd64.whl (92.4 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

ClustAssessPy-1.0.1-cp310-cp310-win32.whl (85.0 kB view hashes)

Uploaded CPython 3.10 Windows x86

ClustAssessPy-1.0.1-cp310-cp310-musllinux_1_2_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

ClustAssessPy-1.0.1-cp310-cp310-musllinux_1_2_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ i686

ClustAssessPy-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (134.0 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (138.2 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-cp310-cp310-macosx_11_0_arm64.whl (95.1 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

ClustAssessPy-1.0.1-cp310-cp310-macosx_10_9_x86_64.whl (98.0 kB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

ClustAssessPy-1.0.1-cp39-cp39-win_amd64.whl (92.3 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

ClustAssessPy-1.0.1-cp39-cp39-win32.whl (85.0 kB view hashes)

Uploaded CPython 3.9 Windows x86

ClustAssessPy-1.0.1-cp39-cp39-musllinux_1_2_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ x86-64

ClustAssessPy-1.0.1-cp39-cp39-musllinux_1_2_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ i686

ClustAssessPy-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (133.2 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (138.4 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-cp39-cp39-macosx_11_0_arm64.whl (95.2 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

ClustAssessPy-1.0.1-cp39-cp39-macosx_10_9_x86_64.whl (98.2 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

ClustAssessPy-1.0.1-cp38-cp38-win_amd64.whl (92.4 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

ClustAssessPy-1.0.1-cp38-cp38-win32.whl (85.0 kB view hashes)

Uploaded CPython 3.8 Windows x86

ClustAssessPy-1.0.1-cp38-cp38-musllinux_1_2_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.2+ x86-64

ClustAssessPy-1.0.1-cp38-cp38-musllinux_1_2_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.2+ i686

ClustAssessPy-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (133.9 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (137.9 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-cp38-cp38-macosx_11_0_arm64.whl (95.0 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ ARM64

ClustAssessPy-1.0.1-cp38-cp38-macosx_10_9_x86_64.whl (97.9 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

ClustAssessPy-1.0.1-cp37-cp37m-win_amd64.whl (93.0 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

ClustAssessPy-1.0.1-cp37-cp37m-win32.whl (85.9 kB view hashes)

Uploaded CPython 3.7m Windows x86

ClustAssessPy-1.0.1-cp37-cp37m-musllinux_1_2_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.2+ x86-64

ClustAssessPy-1.0.1-cp37-cp37m-musllinux_1_2_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.2+ i686

ClustAssessPy-1.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (135.4 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

ClustAssessPy-1.0.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (141.3 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686

ClustAssessPy-1.0.1-cp37-cp37m-macosx_10_9_x86_64.whl (97.6 kB view hashes)

Uploaded CPython 3.7m macOS 10.9+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page