逐元素检查 Interval 是否与 Python Pandas 中的 IntervalArray 中的值重叠

要按元素检查 Interval 是否与 IntervalArray 中的值重叠,请使用overlaps()Pandas 中的方法。

首先,导入所需的库 -

import pandas as pd

如果两个区间共享一个公共点(包括闭合端点),则它们会重叠。只有一个共同开放端点的区间不重叠。创建一个 IntervalArray -

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

显示 IntervalArray -

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

检查元素是否 Interval 与 IntervalArray 中的值重叠 -

print("\nDoes interval overlaps values in the IntervalArray...\n",intervals.overlaps(pd.Interval(12, 30)))

示例

以下是代码 -

import pandas as pd

#如果两个区间共享一个公共点(包括闭合端点),则它们会重叠。间隔
# 只有一个共同的开放端点不重叠
# 创建一个间隔数组
intervals = pd.arrays.IntervalArray.from_tuples([(10, 20), (15, 35)])

# 显示间隔数组
print("IntervalArray...\n",intervals)

# 显示间隔长度
print("\nInterval length...\n",intervals.length)

# 逐元素检查 Interval 是否与 IntervalArray 中的值重叠
print("\nDoes interval overlaps values in the IntervalArray...\n",intervals.overlaps(pd.Interval(12, 30)))
输出结果

这将产生以下输出 -

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

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

Does interval overlaps values in the IntervalArray...
[ True True]

猜你喜欢