Skip to main content

scloop - single-cell loop analysis

CI Test Import Test Build PyPI

Note: this package is in early stages of development. (manuscirpt in prep)

scLoop is a library to identify statistically significant loops in single-cell RNA-seq data.

persistent homology demo
monkey

Basic Usage

import scloop as scl
# Preprocess anndata
scl.pp.prepare_adata(adata, downsample=True, n_downsample=500)
# Identify statistically significant loops
scl.tl.find_loops(adata, ...)
# Compute trajectories, gene trends, and important features of each loop
scl.tl.analyze_loops(adata, ...)
# Match loops across datasets
scl.tl.match_loops([adata1, adata2, ...], ...)

Build Instructions

make build

or

make rebuild

Virtual Envrionemnt

make sync

or

make full-sync

to prevent partial compilation of some modules

Installation

Note: this package is in early stages of development. The current build will have issues.

pip install scloop

Project Structure

src/scloop/
├── analyzing
│   ├── bootstrap.py
│   ├── feature_selection.py
│   ├── gene_trend.py
│   ├── hodge.py
│   ├── __init__.py
│   └── stats.py
├── benchmarking
│   ├── benchmarking_slicer.R
│   ├── datasets.py
│   ├── hf_registry.yaml
│   ├── __init__.py
│   ├── install_r_packages.R
│   ├── lle_1.1.tar.gz
│   ├── renv
│   │   ├── activate.R
│   │   ├── library
│   │   ├── settings.json
│   │   └── staging
│   ├── renv.lock
│   ├── SLICER
│   │   ├── data
│   │   ├── DESCRIPTION
│   │   ├── man
│   │   ├── NAMESPACE
│   │   ├── R
│   │   ├── README.md
│   │   ├── SLICER.Rproj
│   │   └── vignettes
│   ├── slicer_results.csv
│   └── splatter
│       ├── codecov.yml
│       ├── DESCRIPTION
│       ├── index.md
│       ├── inst
│       ├── LICENSE
│       ├── man
│       ├── NAMESPACE
│       ├── NEWS.md
│       ├── pkgdown
│       ├── _pkgdown.yml
│       ├── R
│       ├── README.md
│       ├── tests
│       └── vignettes
├── computing
│   ├── boundary.py
│   ├── divergence.py
│   ├── embedding.py
│   ├── hodge_decomposition.py
│   ├── homology.py
│   ├── __init__.py
│   ├── loops.py
│   ├── matching.py
│   └── utils.py
├── data
│   ├── analysis_containers.py
│   ├── base_components.py
│   ├── boundary.py
│   ├── constants.py
│   ├── containers.py
│   ├── __init__.py
│   ├── metadata.py
│   ├── ripser.cpp
│   ├── ripser.hpp
│   ├── ripser_lib.cpp
│   ├── ripser_lib.pyx
│   ├── types.py
│   └── utils.py
├── __init__.py
├── io
│   └── __init__.py
├── matching
│   ├── cross_dataset.py
│   ├── data_modules.py
│   ├── __init__.py
│   ├── mlp.py
│   └── nf.py
├── plotting
│   ├── _cross_match.py
│   ├── custom_colormaps.py
│   ├── _hodge.py
│   ├── _homology.py
│   ├── __init__.py
│   ├── _trajectory.py
│   └── _utils.py
├── preprocessing
│   ├── delve
│   │   ├── delve.py
│   │   ├── __init__.py
│   │   └── kh.py
│   ├── downsample.py
│   ├── __init__.py
│   └── prepare.py
├── py.typed
├── tools
│   ├── _cross_match.py
│   ├── __init__.py
│   └── _loops.py
└── utils
    ├── denoise
    │   ├── __init__.py
    │   ├── Sanity
    │   ├── Sanity.cpp
    │   ├── Sanity_py.py
    │   └── Sanity.pyx
    ├── distance_metrics
    │   ├── discrete-frechet-distance
    │   ├── frechet.cpp
    │   ├── frechet_py.py
    │   ├── frechet.pyx
    │   └── __init__.py
    ├── __init__.py
    ├── linear_algebra_gf2
    │   ├── GF2toolkit
    │   ├── gf2toolkit_lib.cpp
    │   ├── gf2toolkit_lib.pyx
    │   ├── gf2toolkit_wrapper.cpp
    │   ├── gf2toolkit_wrapper.hpp
    │   ├── __init__.py
    │   ├── m4ri_lib.c
    │   └── m4ri_lib.pyx
    ├── logging.py
    └── pvalues.py

Metadata

Release files for scloop 0.1.28

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for scloop 0.1.28
File Size Uploaded
scloop-0.1.28.tar.gz 1.1 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for scloop 0.1.28
File
scloop-0.1.28-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
scloop-0.1.28-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
scloop-0.1.28-cp312-cp312-macosx_14_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 14.0+ x86-64 Details
scloop-0.1.28-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details

Total release size: 11.0 MB

Release files / scloop-0.1.28.tar.gz

Download URL scloop-0.1.28.tar.gz
Size 1.1 MB
Tags Source
SHA-256 checksum
How to use checksums
0786297084c004a3c36f89753c931138904b428341136e51182071592c435fbc
BLAKE2b-256 checksum
How to use checksums
6915f184b38c1b97b236a7142437e85f1f0e4ba6d90cb3ecebaff16e239956ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / scloop-0.1.28-cp312-cp312-win_amd64.whl

Download URL scloop-0.1.28-cp312-cp312-win_amd64.whl
Size 2.4 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
e466a2cf01511cbb1d7114cef6454d21e4a1c2044dea9de17405471465f0ad8a
BLAKE2b-256 checksum
How to use checksums
42db6fb51017622d52fa1ffbf8d32ac3634b1346a6995287ce28df0f2c3e9fa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / scloop-0.1.28-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL scloop-0.1.28-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 4.0 MB
Tags CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7f6d8efb420a958835819dacff201806e2f54973f717b68e8bee1686e34c4b6b
BLAKE2b-256 checksum
How to use checksums
a59b9db7597035e2a643408bedb6d059ee8a401d3103d6f7de54ad3d7c150357
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / scloop-0.1.28-cp312-cp312-macosx_14_0_x86_64.whl

Download URL scloop-0.1.28-cp312-cp312-macosx_14_0_x86_64.whl
Size 1.6 MB
Tags CPython 3.12 macOS 14.0+ x86-64
SHA-256 checksum
How to use checksums
3a21d7fe7462dfbccd0c0f24088b5ddba50cb24dd0ff415396a8b0dde05b2746
BLAKE2b-256 checksum
How to use checksums
b78afcdaa56ed151f64770f0d443b7b6be4d82282faf0ada540df44086a1ebd8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / scloop-0.1.28-cp312-cp312-macosx_14_0_arm64.whl

Download URL scloop-0.1.28-cp312-cp312-macosx_14_0_arm64.whl
Size 2.0 MB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
3fd12045b890fb8d51476fba6949d596223c4e0c0db36d9daf44468a6ae18da9
BLAKE2b-256 checksum
How to use checksums
a794855016b0a6e651e3144863571ac435630483454b9efd2568d6ed286fa29b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.28 This release

5 release files

0.1.24

5 release files

0.1.23

5 release files

0.1.13

5 release files

0.1.12

5 release files

0.1.11

5 release files

0.1.10

5 release files

0.1.9

5 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page