Skip to main content

Accurate and efficient binomial, Hardy-Weinberg equilibrium, and Fisher's exact tests.

Project description

exact-tests

This package implements the binomial, Hardy-Weinberg equilibrium, and Fisher's (2x2 and 2x3 so far) exact tests, along with corresponding discrete distributions (binomial, hypergeometric). scipy- and R-style interfaces are provided. cdf-like functions offer a fast 'approx' mode.

As of this writing, these functions (even in 'approx' mode) are more accurate, and often simultaneously more efficient, than their scipy counterparts: see the MPFR-comparison and benchmark scripts under utils/ . E.g.

$ utils/pbinom_accuracy.py
n in [2^5, 2^6): errRMS=0  approxErrRMS=7.31e-17  scipyErrRMS=0
n in [2^20, 2^21): errRMS=0  approxErrRMS=1.25e-15  scipyErrRMS=2.18e-15
n in [2^35, 2^36): errRMS=0  approxErrRMS=6.77e-15  scipyErrRMS=1.15e-14
$ utils/pbinom_accuracy.py -p 0.1  # scipy accuracy degrades more quickly with most values of p != 0.5, or k further from np
n in [2^5, 2^6): errRMS=0  approxErrRMS=1.06e-16  scipyErrRMS=4.22e-16
n in [2^20, 2^21): errRMS=0  approxErrRMS=1.62e-15  scipyErrRMS=1.23e-11
n in [2^35, 2^36): errRMS=0  approxErrRMS=5.48e-15  scipyErrRMS=3.47e-07
$ utils/pbinom_accuracy.py --z-score -2
n in [2^5, 2^6): errRMS=6.51e-17  approxErrRMS=2.48e-16  scipyErrRMS=1.96e-16
n in [2^20, 2^21): errRMS=0  approxErrRMS=5.08e-16  scipyErrRMS=1.01e-13
n in [2^35, 2^36): errRMS=0  approxErrRMS=6.87e-16  scipyErrRMS=1.66e-11
$ utils/pbinom_benchmark.py  # yes, default mode becomes slower than scipy for large n, that's why approx= exists
n=(2^5)-1: base=7.46e-07  approx=3e-07  scipy=3.03e-05 sec/iter
n=(2^20)-1: base=4.73e-05  approx=3.51e-06  scipy=2.93e-05 sec/iter
n=(2^35)-1: base=0.00114  approx=7.93e-05  scipy=9.52e-05 sec/iter

$ utils/binomtest_accuracy.py --z-score 1
n in [2^5, 2^6): errRMS=1.44e-16  scipyErrRMS=1.96e-16
n in [2^20, 2^21): errRMS=5.4e-16  scipyErrRMS=6e-14
n in [2^35, 2^36): errRMS=5.83e-16  scipyErrRMS=7.53e-12
$ utils/binomtest_benchmark.py --z-score 1  # ~100-200x speedup, better accuracy
n=(2^5)-1: base=8.42e-07  scipy=0.000189 sec/iter
n=(2^20)-1: base=4.03e-06  scipy=0.000464 sec/iter
n=(2^35)-1: base=5.67e-06  scipy=0.000774 sec/iter

$ utils/phyper_accuracy.py --z-score -0.5  # scipy accuracy degrades quickly
n in [2^5, 2^6): errRMS=0  approxErrRMS=1.72e-16  scipyErrRMS=2.84e-16
n in [2^20, 2^21): errRMS=0  approxErrRMS=3.01e-15  scipyErrRMS=1.73e-10
n in [2^35, 2^36): errRMS=0  approxErrRMS=3.93e-13  scipyErrRMS=1.05e-05
$ utils/phyper_benchmark.py --z-score -0.5  # scipy speed is ok, except...
n=(2^5)-1: base=7.54e-07  approx=2.08e-07  scipy=3.51e-05 sec/iter
n=(2^20)-1: base=6.98e-05  approx=5.37e-06  scipy=4.35e-05 sec/iter
n=(2^35)-1: base=0.00697  approx=0.000401  scipy=0.00195 sec/iter
$ utils/phyper_benchmark.py --z-score 0.0001  # ...it blows up for large n when z approaches 0.
n=(2^5)-1: base=7.12e-07  approx=2.12e-07  scipy=3.51e-05 sec/iter
n=(2^20)-1: base=6.88e-05  approx=5.32e-06  scipy=0.000498 sec/iter
n=(2^35)-1: base=0.0147  approx=0.000873  scipy=2.69 sec/iter
$ utils/phyper_benchmark.py
n=(2^5)-1: base=7.33e-07  approx=2.12e-07  scipy=3.49e-05 sec/iter
n=(2^20)-1: base=6.87e-05  approx=5.32e-06  scipy=0.000492 sec/iter
n=(2^35)-1: base=0.0147  approx=0.000869  scipy=14.8 sec/iter

$ utils/fisher_exact_22_accuracy.py --z-score -1
n in [2^5, 2^6): errRMS=9.71e-17  scipyErrRMS=2.39e-16
n in [2^20, 2^21): errRMS=3.17e-15  scipyErrRMS=1.85e-10
n in [2^35, 2^36): errRMS=6.63e-13
$ utils/fisher_exact_22_benchmark.py --z-score -1  # ~75-250x speedup, better accuracy
n=(2^5)-1: base=1.07e-06  scipy=0.000258 sec/iter
n=(2^20)-1: base=8.34e-06  scipy=0.000667 sec/iter
n=(2^35)-1: base=0.000742 sec/iter

$ utils/odds_ratio_accuracy.py --z-score 1
n in [2^5, 2^6): estErrRMS=5.32e-16  ciLowErrRMS=7.12e-16  ciHighErrRMS=7.23e-16  scipyEstErrRMS=1.3e-15  scipyCiLowErrRMS=1.25e-14  scipyCiHighErrRMS=1.42e-15
n in [2^10, 2^11): estErrRMS=1.42e-16  ciLowErrRMS=2e-15  ciHighErrRMS=1.88e-15  scipyEstErrRMS=1.2e-14  scipyCiLowErrRMS=2.33e-14  scipyCiHighErrRMS=3.13e-14
n in [2^15, 2^16): estErrRMS=8.46e-17  ciLowErrRMS=7.79e-15  ciHighErrRMS=7.73e-15  scipyEstErrRMS=1.52e-12  scipyCiLowErrRMS=1.2e-11  scipyCiHighErrRMS=6.64e-13
n in [2^35, 2^36): estErrRMS=6.81e-17  ciLowErrRMS=8.35e-12  ciHighErrRMS=8.35e-12
$ utils/odds_ratio_benchmark.py --z-score 1  # 200x and larger speedups, better accuracy
n=(2^5)-1: est=8.5e-07  ci=1.07e-06  scipy_est=0.000434  scipy_ci=0.00251 sec/iter
n=(2^10)-1: est=8.08e-07  ci=1.65e-06  scipy_est=0.000503  scipy_ci=0.0272 sec/iter
n=(2^15)-1: est=3.08e-06  ci=6.39e-06  scipy_est=0.000694  scipy_ci=2.23 sec/iter
n=(2^35)-1: est=0.000824  ci=0.00172 sec/iter

$ utils/HWE_accuracy.py --maf 0.05 --z-score 1
n in [2^10, 2^11): errRMS=1.95e-16  snphweErrRMS=2.04e-16
n in [2^15, 2^16): errRMS=2.9e-16  snphweErrRMS=6.48e-16
n in [2^20, 2^21): errRMS=6.25e-16  snphweErrRMS=1.6e-15
$ utils/HWE_benchmark.py --maf 0.05 --z-score 1  # snphwe.snphwe() is accurate, but slow for biobank-scale cases (we're >200x as fast for n~=1m)
n=(2^10)-1: base=2.83e-07  snphwe=8.08e-07 sec/iter
n=(2^15)-1: base=4.5e-07  snphwe=1.24e-05 sec/iter
n=(2^20)-1: base=1.48e-06  snphwe=0.000388 sec/iter

The central building block is a high-precision log-factorial function utilizing the QD library (https://github.com/BL-highprecision/QD ).

Build instructions

PyPI:

python -m pip install 'pip>=20.3'
python -m pip install exact_tests

GitHub:

python -m pip install 'pip>=20.3'
python -m pip install -e 'git+https://github.com/chrchang/stats.git#egg=exact_tests&subdirectory=Python'

Or install from a cloned copy:

# clone repo
git clone https://github.com/chrchang/stats
# go to python folder
cd stats/Python
# install the package
python -m pip install -e .

You can test the package with pytest.

Example usage:
import exact_tests

exact_tests.binomtest(3, n=15, p=0.1, alternative="greater")
exact_tests.binomtest(2, 29, 0.1)
exact_tests.binomtest(2, 29, "0.1")
exact_tests.binomtest(2, 29, "0.1", midp=True)
exact_tests.binomtest(100, 10000, "0.000001", logp=True)
exact_tests.fisher_exact([[4, 0], [0, 4]], alternative="greater", midp=True)
exact_tests.fisher_exact([[10000, 20000], [30000, 40000], [50000, 60000]], logp=True)

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

exact_tests-0.8.2.tar.gz (291.3 kB view details)

Uploaded Source

Built Distributions

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

exact_tests-0.8.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

exact_tests-0.8.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

exact_tests-0.8.2-cp314-cp314-macosx_10_15_universal2.whl (632.1 kB view details)

Uploaded CPython 3.14macOS 10.15+ universal2 (ARM64, x86-64)

exact_tests-0.8.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

exact_tests-0.8.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

exact_tests-0.8.2-cp313-cp313-macosx_10_13_universal2.whl (629.5 kB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

exact_tests-0.8.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

exact_tests-0.8.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

exact_tests-0.8.2-cp312-cp312-macosx_10_13_universal2.whl (630.3 kB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

exact_tests-0.8.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

exact_tests-0.8.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

exact_tests-0.8.2-cp311-cp311-macosx_10_9_universal2.whl (627.3 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

exact_tests-0.8.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

exact_tests-0.8.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

exact_tests-0.8.2-cp310-cp310-macosx_10_9_universal2.whl (629.6 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file exact_tests-0.8.2.tar.gz.

File metadata

  • Download URL: exact_tests-0.8.2.tar.gz
  • Upload date:
  • Size: 291.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for exact_tests-0.8.2.tar.gz
Algorithm Hash digest
SHA256 7baeec9a8320f70e4ed4ddb4e2f881dadd11fd570c150b9b445acd3d23f59922
MD5 f67f85a70e7d5712af8c3d13742e29eb
BLAKE2b-256 fc04c8458c3e4830f684fbed23faf067f248abbf97b9caf8c709b350721faa9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2.tar.gz:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a9808a9989293c9f37d877dfc08ff7345de93dfec60d291b46cc359d24443371
MD5 c24871944f371fe622f679c049727ed4
BLAKE2b-256 89d9432c07a30952df7e26767d0af35c7d77d282a9b471c7eaf341e87ca6919c

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9c18a561e24e10877527664f45fecb41f8b0f02c8eb3388c2e3fce871760ec78
MD5 5c65c53998a8bc5b2ce2288669f693db
BLAKE2b-256 949eafbb56f5f7b34eacd92852ad1714034ade4bb03dd6a63b75d25d988b1402

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp314-cp314-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 95beaf92f893f696366f516860c93cf2313f1b52643cba37d2acebcbaacd5b1c
MD5 9a7e9bac287192cedce4d419daf19790
BLAKE2b-256 78904eccd85f34a5df40be0c2f55dac97bd795a096a262f61decb505429cf6da

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp314-cp314-macosx_10_15_universal2.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 045af01f0b9770dd4ffc9a483c12fae382897ca505c2e1eb4280c5a62a2e1c21
MD5 dd5bf9f325baa200666d1190dad23fd6
BLAKE2b-256 9d00618d16aec68638d3ccfcef3ccb4afcb772328b24f85d1fac0a64d83cd09b

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9e23d2b9b77644c641547567ac0d31782a60ac38f75652cf4d3ad2a5eb6672ac
MD5 2fb7ff8fa3051ef1c4b6866741a6531a
BLAKE2b-256 00986239329eb190c4458f8e609c51315ecb95b6e7824d569caca8b55474d656

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 e63fca3b9162b1eb624849adb0c7f1d737a7baf08cb60b4be28765396ecb4379
MD5 91e64a44a5141db42d4d3df7ada290a2
BLAKE2b-256 fe06e64ae22acad8a9dbdf317d3913796c3c945d245b54b6c81e2d871ff52abd

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp313-cp313-macosx_10_13_universal2.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 54f791bec018308c25ddaa56a108cec7e198fc0dd2274831611f2e0653d37112
MD5 98c7616e57da3c12925c85427df9043f
BLAKE2b-256 03d2c94fb7ba7c6c3a2e9087db065a9ab86e3e1c7d046c3df5b4169a57af89ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ba5c79fc3afd3cb5edb4158d62ddd136feaac9b6b0332f8605bdf6e9589e17f8
MD5 1dc1987267fb8ca880dec2c302bc4f4d
BLAKE2b-256 1b89d9f371ba54d532b04b78d41dce83a920edab185760f5590da38752513b3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 f15279f88a53dffc69976d3481a481b1d2fef9944851927c02bfb735cc1ee4cf
MD5 a0c1bfffc9d3b4b1f33cb30e2ba42860
BLAKE2b-256 053d991c25f057689aba459c4365850dd6b5eab32d466dadb03688871dcc33f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp312-cp312-macosx_10_13_universal2.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 42da1b7bce5f8f27df1369c1a56846c6957eb0b21cde88da44d824833f66b493
MD5 898a5b8b2799f706a0e3cb3d91ea69dc
BLAKE2b-256 0b97651c0ae3eca4c228fb54cc0a9f40cb646256e3f93672059b3594f32fb788

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a4ef42d4517e5c02d242617dbc88052bc2cca5e1b887bd4e6496a61e4e9307a9
MD5 5e74e42ae5a4f43b37f9a026a174b997
BLAKE2b-256 289068677893589ab61f6d9b221e137d6dbee78ef2b9c814206c2ad3a3eda07b

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 80596c685afe9b8fa25e6b588259e653e0c2dc8de08a7afd26b238e649891a81
MD5 342b327671e5982cd8922d9aa0f3a85f
BLAKE2b-256 028be0a46254d73b9f677ce28cd08e4c1b582451b6d88cdc622cf80bd7a7e7f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp311-cp311-macosx_10_9_universal2.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6277b701b5b4065977e30af89bd989709218e4f435fd27f394f0410a3b8bf8f4
MD5 fc63a1c46d6ffd34ede611132216d6b5
BLAKE2b-256 d420bad3e3d0b254c61e708285cb8750e2a62c4a6c728ff17ef493b09fffc785

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3437f8fb15112f073834b5c5aa36ab86a6ba1d89a9f1a56604f432d51d773cd4
MD5 bf1e2824725282a5372296b82e827840
BLAKE2b-256 45231017ce575ca2bbb6c5791c6c16e0ecc7416af1466c931dda8bf0c9c97eec

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yaml on chrchang/stats

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

File details

Details for the file exact_tests-0.8.2-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for exact_tests-0.8.2-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 26dc437bc5263069248d65e07a1d860ba92bd8289ab407a66f6cee4a81de9c68
MD5 a497e0c15f36dd1c75c12d94fd6e75de
BLAKE2b-256 ffdf282818afae151f1d7296cbdb84598a5f5ca9e499cf351daad4aee0bd92fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for exact_tests-0.8.2-cp310-cp310-macosx_10_9_universal2.whl:

Publisher: release.yaml on chrchang/stats

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