Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas - ตรวจสอบว่าสอง Interval Object ทับซ้อนกันหรือไม่

เพื่อตรวจสอบว่าสองออบเจกต์ Interval (ช่วง) ทับซ้อนกันหรือไม่ ให้ใช้เมธอด overlaps()

หลักการ

ช่วงสองช่วงทับซ้อนกันหากแบ่งปันจุดร่วม รวมถึงปลายปิด ช่วงที่มีเพียงปลายเปิดร่วมกันไม่ถือว่าทับซ้อน

ขั้นตอนตัวอย่าง

import pandas as pd

# สร้างสอง Interval objects (ค่าเริ่มต้น closed='right' คือ เปิดซ้าย ปิดขวา)
interval1 = pd.Interval(10, 30)
interval2 = pd.Interval(25, 35)

print("Interval 1...\n", interval1)
print("Interval 2...\n", interval2)

# ตรวจสอบการทับซ้อน
print("\nทั้งสอง Interval ทับซ้อนกันหรือไม่?\n", interval1.overlaps(interval2))

โค้ดเต็มและผลลัพธ์

import pandas as pd

interval1 = pd.Interval(10, 30)
interval2 = pd.Interval(25, 35)

print("Interval 1...\n", interval1)
print("Interval 2...\n", interval2)
print("\nความยาว Interval 1 =", interval1.length)
print("\nความยาว Interval 2 =", interval2.length)
print("\nทั้งสอง Interval ทับซ้อนกันหรือไม่?\n", interval1.overlaps(interval2))
Interval 1...
 (10, 30]
Interval 2...
 (25, 35]
ความยาว Interval 1 = 20
ความยาว Interval 2 = 10
ทั้งสอง Interval ทับซ้อนกันหรือไม่?
 True

คำอธิบาย: ช่วง (10, 30] และ (25, 35] แบ่งปันช่วง (25, 30] จึงทับซ้อนกัน