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.1.tar.gz (551.9 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.1-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyotc-0.3.1.tar.gz
  • Upload date:
  • Size: 551.9 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.1.tar.gz
Algorithm Hash digest
SHA256 55ec4d4686cfc28f1d0ce7bb8f1752bf4ee0b2e81fbda295ee8540e75a395709
MD5 2b1761117dcca3c66bd3583b9d6febd3
BLAKE2b-256 566722838ed39bb80ad0219d6b13872800e059da876f34b182c7e289cff1559d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyotc-0.3.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: pyotc-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 30.4 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4a8afa8ffc0df35cbf9e9530df5459869243fca66d738f6312c160d05102cf18
MD5 9735a2eca1e6c6dfb8bab62c39a686b4
BLAKE2b-256 fe6b0cc2275fbca239202a0f1f6391e32194862abde1f2216956a1ece2775aff

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyotc-0.3.1-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