บทนำ
ใช้ overlaps() เพื่อตรวจสอบแบบ element-wise ว่าช่วง (Interval) ที่กำหนดทับซ้อนกับแต่ละช่วงใน IntervalArray หรือไม่
ขั้นตอน
1. นำเข้าไลบรารีและสร้าง IntervalArray
import pandas as pd
intervals = pd.arrays.IntervalArray.from_tuples([(10, 20), (15, 35)])
2. ตรวจสอบการทับซ้อนกับช่วง (12, 30)
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)
print("\nDoes interval overlaps values in the IntervalArray...\n",
intervals.overlaps(pd.Interval(12, 30)))
ผลลัพธ์
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]
คำอธิบาย
- ช่วงที่ 1:
(10, 20]ทับซ้อนกับ(12, 30)ที่ 12-20 - ช่วงที่ 2:
(15, 35]ทับซ้อนกับ(12, 30)ที่ 15-30 - ทั้งคู่ทับซ้อน →
[True, True] - ค่าเริ่มต้นของ Interval: ปิดขวา (right-closed)
- เหมาะสำหรับการ filter, masking, หรือ conditional logic