ailist’s documentation#
ailist – Augmented Interval List implemented in Cython/C#
The Python-based implementation efficiently deals with many intervals.
Benchmark#
Test numpy random integers, see benchmarking
Library |
Function |
Time (µs) |
---|---|---|
ncls |
single overlap |
1170 |
quicksect |
single overlap |
1050 |
pandas |
single overlap |
241 |
ailist |
single overlap |
102 |
As of conducting these benchmarks, only ncls and ailist have bulk query functions.
Library |
Function |
Time (s) |
Max Memory (GB) |
---|---|---|---|
ncls |
bulk overlap |
~151 |
>50 |
ailist |
bulk overlap |
~17.9 |
~9 |
Querying intervals is much faster and more efficient with ailist
AIList
provides a scalable way to store and search
overlapping intervals
See the code and discuss development on GitHub.
Release Notes#
- Method additions
index_by_ailist()
- Fixed memory leak
Fixed memory leak in
intersect_from_array()
Fixed memory leak in
intersect()
- Frozen status
- Method additions
Added ability to index with iterables
bin_sums()
bin_means()
- Documentation overhaul