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”值设置为“closed” −
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
# 两个区间共享一个公共点,包括闭合端点
# 创建 IntervalArray
intervals = pd.arrays.IntervalArray.from_tuples([(10, 20), (20, 35)])
# 显示 IntervalArray
print("IntervalArray...\n",intervals)
# 显示区间长度
print("\nInterval length...\n",intervals.length)
# 检查只有一个公共开放端点的区间是否重叠
# 我们已将右侧的“closed”参数的“right”值设置为“closed”
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]
极客教程