Skip to main content

Another Genome Conversion Tool: Python frontend to Rust chainfile crate

Project description

agct: Another Genome Conversion Tool

image image image Actions status

Lift over positions between genomic reference assemblies, using the St. Jude's chainfile crate.

Enables significantly faster chainfile loading from cold start (see analysis/).

Installation

Install from PyPI:

python3 -m pip install agct

Usage

Initialize a class instance:

from agct import Converter, Assembly, Strand

c = Converter(Assembly.HG19, Assembly.HG38)

If a chainfile is unavailable locally, it's downloaded from UCSC and saved using the wags-tails package -- see the wags-tails configuration instructions for information on how to designate a non-default storage location.

Call convert_coordinate():

c.convert_coordinate("chr7", 140453136, 140453137, Strand.POSITIVE)
# returns [LiftoverResult(chrom='chr7', start=140753336, end=140753337, strand=<Strand.POSITIVE: '+'>, score=14633688187)]

Development

The Rust toolchain must be installed.

Create a virtual environment and install developer dependencies:

python3 -m virtualenv venv
source venv/bin/activate
python3 -m pip install -e '.[dev,tests]'

This installs Python code as editable, but after any changes to Rust code, run maturin develop to rebuild the Rust binary:

maturin develop

Be sure to install pre-commit hooks:

pre-commit install

Check Python style with ruff:

python3 -m ruff format . && python3 -m ruff check --fix .

Use cargo fmt to check Rust style (must be run from within the rust/ subdirectory):

cd rust/
cargo fmt

Run tests with pytest:

pytest

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

agct-0.2.1.tar.gz (14.3 kB view details)

Uploaded Source

Built Distributions

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

agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (378.6 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (476.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (357.7 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (347.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (379.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (476.9 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (358.4 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (348.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

agct-0.2.1-cp310-abi3-win_amd64.whl (205.0 kB view details)

Uploaded CPython 3.10+Windows x86-64

agct-0.2.1-cp310-abi3-win32.whl (198.0 kB view details)

Uploaded CPython 3.10+Windows x86

agct-0.2.1-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (378.9 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ s390x

agct-0.2.1-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (477.7 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ppc64le

agct-0.2.1-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (358.7 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARMv7l

agct-0.2.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (347.8 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

agct-0.2.1-cp310-abi3-macosx_11_0_arm64.whl (312.9 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

agct-0.2.1-cp310-abi3-macosx_10_12_x86_64.whl (317.9 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

agct-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (354.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

agct-0.2.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (382.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.5+ i686

File details

Details for the file agct-0.2.1.tar.gz.

File metadata

  • Download URL: agct-0.2.1.tar.gz
  • Upload date:
  • Size: 14.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for agct-0.2.1.tar.gz
Algorithm Hash digest
SHA256 94a20846178eac73ba8ae27851a1a13c92f3fdfe96e0452e6623f3730d4673a3
MD5 8ee7401ca8febdf3e0a780ea71d273c4
BLAKE2b-256 93d1eca3a2873384f79c679f6afabd5f7120fbcc535257163300b8cd71a56e6c

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 bb1421b0e6b53fb435fde85a0b8dd8c3fd8fa3502f24d1923f742d905f19aefa
MD5 d7e000a53503de7966559544654ead97
BLAKE2b-256 5885abc00760854150ae32aa6c4690bbf81e56176f47f1f7bcf170e2abf77477

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 bdc10eb12587b9da8e7e8f50c148ecd0b426c1525f4bf52c6b344d153f667985
MD5 151ba71397cd64fb5feb8d0e7bec0775
BLAKE2b-256 9d8301730f7bc5e1e2a57802d9766f26964d2ef7b757be9a4bf4b7ca9011106d

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 8d08b99feaf0a080a19f2ae66c3c6826381b461811309690570f6fcf66a5c691
MD5 5c07141da78157fe205dff75f06dd31d
BLAKE2b-256 8890f4a094c4b1069a30e370968e90c035cacc59d073b75dd3ae5e3ddf15c388

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 936925dea859230aabc1dc1cd62f1406266e34a78a4f2916560680e3b5b3d616
MD5 0780fcee8a9ad3247b649f99d7b2910b
BLAKE2b-256 80b65780117f64175f5f06ea9b754a972c73a2e8d22fdc3c53a3f985dba6902e

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 2eeab3979facacaf9968c80d7fb8df523c7e2d9d2cdfc8a6ed1e68adcb4bf6b6
MD5 875d52e85ca69927bcf7c09c08a34230
BLAKE2b-256 b4a9d272de8fa7ba7cf8c6bfc75a5d1733f705e9669f2378b3989c328a87a408

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 21dd0cf25e868616d690910ae02d4160639c659eab90dbe88f8bb7381d7d488a
MD5 fe2c4d4b74b398e545efc65bebe48827
BLAKE2b-256 bb05913c3b6c65be83b120844424d1e57be7aa8f198758934e9b5871e492fce6

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9aab8c6e08a8538fd943c1459ba082e3ce1839611145ee9bb516cc9d006f7b35
MD5 ca73ed93066d125d7a71af7501689c25
BLAKE2b-256 fb3573a7f05fb9d0b4c597581f7c79b13eb70f10e7a8bd1c70afeca5f4a6f410

See more details on using hashes here.

File details

Details for the file agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for agct-0.2.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dd6060c1bb9ed13a4a9bc3c9498ef7ae98cec3c428242b00deef16b1e504fc6c
MD5 a41e9820830d7faf566119a786b2fc42
BLAKE2b-256 4d172696cb138ff833e0c6ec6e2f74772ae803946946e93afd2845490428f3bc

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: agct-0.2.1-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 205.0 kB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for agct-0.2.1-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 766521203aaf1ef989bed1c896139bc1f7d0498e0bc59ceb5ea7b4bda848e34a
MD5 60ce7070d0c0ce5faf54a307d2db72b1
BLAKE2b-256 5600b7fe1d5561e2295c348df36eca06f60ab5562c8da1f7db8330ebd4f329a2

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-win32.whl.

File metadata

  • Download URL: agct-0.2.1-cp310-abi3-win32.whl
  • Upload date:
  • Size: 198.0 kB
  • Tags: CPython 3.10+, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for agct-0.2.1-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 c3f61cee0d89ff3305c09195680763e248397c721d446d1bdc6878426d630629
MD5 3a100d449601d04f36ee8de4b477b6b6
BLAKE2b-256 bb3f86f2ca6e4e5c9943bd7549ffcb483afbfd9018c3dcbe597a35b710904426

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 dadde46e219ae4c2fa5843b14f70c52469b81d17b3b4e620b01dca1377112f27
MD5 ea4954293f5a7f4dab2a832c3f588da0
BLAKE2b-256 d6289f4f8b4300f98fa3979ca661c58f1df1196fed899794ad739a67e1641960

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 2c9f7524d6bd40ada37fec4421687efd4381e73f26414dc7edff2c8f039fc10a
MD5 ea8f09596d0a50e42a4a2ec8f409a988
BLAKE2b-256 de2e07c850c3f18904a3729b7e38ebb904c05c11452977c2d2f8d499d43b7600

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 a368a3f185f2d52d4221632e009c822fe026de718e7dacb6f6d655fe34ee0a13
MD5 79b051adb9569b80e7ffa5e3c91015b3
BLAKE2b-256 c2d635d3231d0b301352bdbf4cfe2cd839a7af36795744b5851b23681fca320c

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 18ca92e1a00dd17bf57323eb072b45b1d4659b0c6da1e8f2ef6542dcb4dee8a3
MD5 5697aaa240593453436b122a478b5727
BLAKE2b-256 5c06235a63071f3ba8ac6489bdf648deb249cc6d203a2d68583fb07efa690f48

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5b34761887f8126ae791a5e95b932228b6a35fa9370c07034023961494c9dbeb
MD5 b647f30a0897104cfb1763967df8ecd1
BLAKE2b-256 981f90dc710be2b645231ae7d04858cd7eb131eb24164b86cc368217bae24b37

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2985cd1e47aaa80ee56833a38bfaedb4dfc66ac1f1483968c33f56666568881e
MD5 38a17b36500864f658326d748a03a77c
BLAKE2b-256 a4178a1dc0cdeff56f6a24656b3e4ab6837fe2ca214bdcc5b6bc576fa8f4e133

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 721e2465df3878575955c38997f6a8a01eb3bfd4df0fbaa06319328c4c39a5fe
MD5 f39d5226efa983305acbabd65c2ea50d
BLAKE2b-256 5ad004b28e67e7edbe6905856780f98ced7761d650ff1768bf3a1fe4b2f442df

See more details on using hashes here.

File details

Details for the file agct-0.2.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for agct-0.2.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 55967a37dc15ad2c35db38c3fcd911be78620def8205cb704c5c17953baa4219
MD5 2aca558133222377f03c17874a9a40a8
BLAKE2b-256 e3fce651678a26ccc98fcf05f2711cc98c9ec7cb5f186ecee22927f6e82d8cbc

See more details on using hashes here.

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