ailist.IntervalArray.intersect_from_IntervalArray#

IntervalArray.intersect_from_IntervalArray(ail_query, return_intervals=True, return_index=False)[source]#

Find interval indices overlapping given ranges

Parameters:
ail_query : IntervalArray

Intervals to query

Returns:

ref_indexnp.ndarray{int}

Overlapping interval indices from IntervalArray

query_indexnp.ndarray{int}

Overlapping interval indices from query IntervalArray

See also

IntervalArray.construct

Construct IntervalArray, required to call IntervalArray.intersect

IntervalArray.add

Add interval to IntervalArray

IntervalArray.intersect

Find intervals overlapping given range

IntervalArray.intersect_from_array

Find interval indices overlapping given range

Examples

>>> from ailist import IntervalArray
>>> ail1 = IntervalArray()
>>> ail1.add(1, 2)
>>> ail1.add(3, 4)
>>> ail1.add(2, 6)
>>> ail1
IntervalArray
    range: (1-6)
    (1-2)
    (3-4)
    (2-6)
>>> ail2 = IntervalArray()
>>> ail2.add(1, 2)
>>> ail2.add(3, 6)
>>> ail2.add(3, 6)
>>> ail2
IntervalArray
    (1-2)
    (3-6)
>>> q = ail1.intersect_from_IntervalArray(ail2)
>>> q
(array([0, 1, 1]), array([0, 2, 1]))