Python Pandas - Check whether two Interval objects that share closed endpoints overlap



To check whether two Interval objects that share closed endpoints overlap, use the overlaps() method.

At first, import the required libraries −

import pandas as pd

Two intervals overlap if they share a common point, including closed endpoints. Intervals that only have an open endpoint in common do not overlap.

Create two Interval objects. Interval closed from the both sides. Interval set using the "closed" parameter with value "both"

interval1 = pd.Interval(10, 30, closed='both')
interval2 = pd.Interval(30, 50, closed='both')

Display the intervals

print("Interval1...\n",interval1)
print("Interval2...\n",interval2)

Check whether both the interval objects overlap

print("\nDo both the interval objects overlap?\n",interval1.overlaps(interval2))

Example

Following is the code

import pandas as pd

# Two intervals overlap if they share a common point, including closed endpoints
# Intervals that only have an open endpoint in common do not overlap
# Create two Interval objects
# Interval closed from the both sides
# Interval set using the "closed" parameter with value "both"
interval1 = pd.Interval(10, 30, closed='both')
interval2 = pd.Interval(30, 50, closed='both')

# display the intervals
print("Interval1...\n",interval1)
print("Interval2...\n",interval2)

# display the length of both Interval1 and Interval2 objects
print("\nInterval1 object length = ",interval1.length)
print("\nInterval2 object length = ",interval2.length)

# check whether both the interval objects overlap
print("\nDo both the interval objects overlap?\n",interval1.overlaps(interval2))

Output

This will produce the following code

Interval1...
[10, 30]
Interval2...
[30, 50]

Interval1 object length = 20

Interval2 object length = 20

Do both the interval objects overlap?
True

Advertisements