ailist’s documentation#

Stars PyPIDownloads PyPI Build Status

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
Frozen status
Method additions
  • Added ability to index with iterables

  • downsample()

  • bin_sums()

  • bin_means()

Documentation overhaul
  • Creation of documentation for AIList

  • Creation of documentation for Interval

Indices and tables#