py-lapper

A pure python port of nim-lapper.


Keywords
intervals, bioinformatics, algorithm
License
MIT
Install
pip install py-lapper==0.9.5

Documentation

py_lapper

PyPI version Coverage Documentation Status

A pure python port of nim-lapper. Please also see the rust lib, rust-lapper

Stay tuned for a pyO3 wrapper for the rust lib.

Documentation can be found here.

Install

pip install py_lapper

Usage

from py_lapper import Interval, Lapper, Cursor

intervals = [Interval(0, 5, True), Interval(4, 8, True), Interval(9, 12, True)]
lapper = Lapper(intervals)

found = [iv for iv in lapper.find(4, 7)]
# found = [Interval(0, 5, True), Interval(4, 8, True)]

# Use seek when you will have many queries in sorted order.
cursor = Cursor(0)
found = [iv for iv in lapper.seek(1, 4, cursor)]
# found = [Interval(0, 5, True)]
# cursor = Cursor(2)

found = [iv for iv in lapper.seek(5, 7, cursor)]
# found = [Interval(4, 8, True)]
# cursor = Cursor(3)

Changelog

1/17/2020 -- 0.9.4

* Fix bug with seek where it skipped last match

1/16/2020 -- 0.9.3

* Added type hints
* Added documentation