Python Pandas IntervalArray - 檢查僅具有公共開端端點的區間是否重疊


要檢查僅具有公共開端端點的區間是否重疊,請使用**overlaps()**方法。

首先,匯入所需的庫:

import pandas as pd

如果兩個區間共享一個公共點(包括閉合端點),則它們重疊。建立一個IntervalArray:

intervals = pd.arrays.IntervalArray.from_tuples([(10, 20), (20, 35)])

顯示IntervalArray:

print("IntervalArray...\n",intervals)

檢查僅具有公共開端端點的區間是否重疊。“closed”引數的“right”值設定為右側閉合:

print("\nDoes interval that that only have an open endpoint overlap or not...\n",intervals.overlaps(pd.Interval(20,25, closed='right')))

示例

以下是程式碼:

import pandas as pd

# Two intervals overlap if they share a common point, including closed endpoints
# Create an IntervalArray
intervals = pd.arrays.IntervalArray.from_tuples([(10, 20), (20, 35)])

# Display the IntervalArray
print("IntervalArray...\n",intervals)

# Display the interval length
print("\nInterval length...\n",intervals.length)

# Check Intervals that only have an open endpoint in common overlap or not
# We have set closed on the right-side with the "right" value of the "closed" parameter
print("\nDoes interval that that only have an open endpoint overlap or not...\n",intervals.overlaps(pd.Interval(20,25, closed='right')))

輸出

這將產生以下輸出:

IntervalArray...
<IntervalArray>
[(10, 20], (20, 35]]
Length: 2, dtype: interval[int64, right]

Interval length...
Int64Index([10, 15], dtype='int64')

Does interval that that only have an open endpoint overlap or not...
[False True]

更新於:2021年10月19日

94 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告