在 Python Pandas 中逐元素检查间隔是否与间隔数组中的值重叠

pythonserver side programmingprogramming更新于 2026/1/20 6:36:17

要逐元素检查间隔是否与间隔数组中的值重叠,请使用 Pandas 中的 overlaps() 方法。

首先,导入所需的库 −

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 overrides values in the IntervalArray...\n",intervals.overlaps(pd.Interval(12, 30)))

示例

以下是代码 −

import pandas as pd

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

# 显示 IntervalArray
print("IntervalArray...\n",intervals)

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

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

输出

This will produce the following output −

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]

相关文章


有用资源