Skip to main content

Perform optimal transition coupling (OTC) in python.

Project description

pyotc

codecov

A python implementations of optimal transport coupling algorithms.

Documentation

Find sphinx documentation here.

Installation

We expect pyotc to be pip-installable across all platforms.

1. Install from pypi (Recommended)

pip install pyotc
  • Note: pyotc requires Python 3.10 or above.

2. Install from github

pip install https://github.com/pyotc/pyotc.git

3. Install for Development

We test in venvs provided by uv via nox. It's helpful, but not strictly necessary to do the same.

git clone https://github.com/pyotc/pyotc.git
cd pyotc
pip install -e .

uv workflow

Install the uv tool. Then

git clone https://github.com/pyotc/pyotc.git
cd pyotc
uv sync
uv pip install -e .

To verify your installation, run

uv run pytest

Run Tests

With a uv setup one can simply

uv run pytest

Otherwise, in pip installed context with deps met, pytest should behave as expected.

Contributing

Guidelines for contribution to pyotc are provided in CONTRIBUTING.md.

Changelog

A summary of changes and guide to versioning are recoreded in CHANGELOG.md.

Citing this Repository

If you wish to cite our work, please use the following BibTeX code:

@article{yi2025alignment,
  title={Alignment and comparison of directed networks via transition couplings of random walks},
  author={Yi, Bongsoo and O'Connor, Kevin and McGoff, Kevin and Nobel, Andrew B},
  journal={Journal of the Royal Statistical Society Series B: Statistical Methodology},
  pages={qkae085},
  year={2024},
  doi = {10.1093/jrsssb/qkae085}
}

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

pyotc-0.3.0.tar.gz (553.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyotc-0.3.0-py3-none-any.whl (28.9 kB view details)

Uploaded Python 3

File details

Details for the file pyotc-0.3.0.tar.gz.

File metadata

  • Download URL: pyotc-0.3.0.tar.gz
  • Upload date:
  • Size: 553.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyotc-0.3.0.tar.gz
Algorithm Hash digest
SHA256 c69ef06c1f6eef104d99073686d7f3e2b975364e531043b0af9b6d4bd5e449db
MD5 d80b9bde62be9a3bbaa30cee00a2a87b
BLAKE2b-256 2e7787678b56bfbb2b8d03999473ba1569be70ebe18112f37e4981396682b57d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyotc-0.3.0.tar.gz:

Publisher: build_and_publish.yml on pyotc/pyotc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyotc-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pyotc-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 28.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyotc-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3a96f738bd8327c4f923faa33414f4a10ae8786cefd8227e1812362562f1e7a9
MD5 83daa56fe6e7437f18fd9765e7e83f34
BLAKE2b-256 b356c1c07ebfb6443f9acac6b7e4e9100a4fe4ef5eafae65e724ddcbdfeee364

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyotc-0.3.0-py3-none-any.whl:

Publisher: build_and_publish.yml on pyotc/pyotc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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