ailist.IntervalArray.intersect#

IntervalArray.intersect(start, end, return_intervals=True, return_index=False)[source]#

Find intervals overlapping given range

Parameters:
start : int | np.ndarray

Start position of query range

end : int | np.ndarray

End position of query range

Returns:

  • overlapsIntervalArray

    Overlapping intervals

  • .. warning:: – This requires construct() and will run it if not already run. This will re-sort intervals inplace is ail.track_index = False.

See also

IntervalArray.construct

Construct IntervalArray, required to call IntervalArray.intersect

IntervalArray.add

Add interval to IntervalArray

IntervalArray.intersect_index

Find interval indices overlapping given range

IntervalArray.intersect_from_array

Find interval indices overlapping given ranges

Examples

>>> from ailist import IntervalArray
>>> ail = IntervalArray()
>>> ail.add(1, 2)
>>> ail.add(3, 4)
>>> ail.add(3, 6)
>>> ail.add(3, 6)
>>> ail
IntervalArray
    (1-2)
    (3-4)
    (3-6)
    (3-6)
>>> q = ail.intersect(2, 10)
>>> q
IntervalArray
    (3-4)
    (3-6)