Python Pandas - 逐个元素检查区间是否包含值

pythonpandasserver side programmingprogramming

要逐个元素检查区间是否包含值,请使用 array.contains() 方法。

首先,导入所需的库 −

import pandas as pd

从类似数组的拆分构造一个新的 IntervalArray −

array = pd.arrays.IntervalArray.from_breaks([0, 1, 2, 3, 4, 5])

显示区间 −

print("我们的 IntervalArray...\n",array)

检查 Interval 是否包含特定值 −

print("\nInterval 是否包含该值? \n",array.contains(3.5))

示例

以下是代码 −

import pandas as pd

# 从类似数组的拆分构造一个新的 IntervalArray
array = pd.arrays.IntervalArray.from_breaks([0, 1, 2, 3, 4, 5])

# 显示 IntervalArray
print("我们的 IntervalArray...\n",array)

# 获取 IntervalArray 的长度
# 返回一个索引,其中包含表示 IntervalArray 中每个间隔长度的条目
print("\n我们的 IntervalArray 长度...\n",array.length)

# IntervalArray 中每个间隔的中点作为索引
print("\nIntervalArray 中每个间隔的中点...\n",array.mid)

# 获取正确的端点
print("\nIntervalArray 中每个间隔的正确端点作为索引...\n",array.right)

print("\n间隔是否包含该值? \n",array.contains(3.5))

输出

这将产生以下代码 −

我们的 IntervalArray...
<IntervalArray>
[(0, 1], (1, 2], (2, 3], (3, 4], (4, 5]]
Length: 5, dtype: interval[int64, right]

我们的 IntervalArray 长度...
Int64Index([1, 1, 1, 1, 1], dtype='int64')

IntervalArray 中每个间隔的中点...
Float64Index([0.5, 1.5, 2.5, 3.5, 4.5], dtype='float64')

IntervalArray 中每个间隔的右端点作为索引...
Int64Index([1, 2, 3, 4, 5], dtype='int64')

间隔是否包含值?
[False False False True False]

相关文章