This library contains a function to compute a two-sample poisson E-test, as defined in Krishnamoorthy & Thomson (2004). I simply edited the fortran code posted on Krishnamoorthy's website so that numpy could wrap it. You can look at the edits in one of the early commits to this repo.
The code as it stands has a few problems, but I figured it'd be worth getting a direct implementation up. Here are some problems that I have noticed:
- Floats not supported for
k
andn
values. - Odd behavior with large numbers (I saw it at
k = n = 10000
). - Odd behavior at
k = 0
.
One day I'll fix these issues by reimplementing in pure python, assuming that doesn't also require a big hit in efficiency.
Numpy is a requirement for poisson-etest, so make sure that's installed first. Then:
pip install poisson-etest
Test whether two samples of Poisson data were drawn from the same distribution.
>>> from poisson_etest import poisson_etest
>>> sample1_k, sample1_n = 10, 20
>>> sample2_k, sample2_n = 15, 20
>>> poisson_etest(sample1_k, sample2_k, sample1_n, sample2_n)
0.33116214285801826