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

ตรวจสอบการทับซ้อนของช่วงที่มีขอบปิดร่วมกันด้วย is_overlapping

เมื่อช่วงใน IntervalIndex ถูกสร้างด้วย closed='both' ขอบเขตจะปิดทั้งสองข้าง ทำให้ช่วงที่ต่อเนื่องกันมีขอบร่วมกัน (เช่น [0, 1] และ [1, 2] ร่วมที่ 1) ซึ่งถือว่าทับซ้อนกัน คุณสมบัติ is_overlapping จะคืนค่า True

ตัวอย่างโค้ด

import pandas as pd

# สร้างช่วงต่อเนื่อง ปิดทั้งสองข้าง
interval = pd.interval_range(0, 8, closed='both')

print("IntervalIndex:\n", interval)
print("\nความยาวช่วง:", interval.length)

# ตรวจสอบการทับซ้อน
print("\nช่วงทับซ้อนกันไหม (ขอบปิดร่วมกัน)?\n", interval.is_overlapping)

ผลลัพธ์

IntervalIndex:
IntervalIndex([[0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6], [6, 7], [7, 8]], dtype='interval[int64, both]')

ความยาวช่วง: Int64Index([1, 1, 1, 1, 1, 1, 1, 1], dtype='int64')

ช่วงทับซ้อนกันไหม (ขอบปิดร่วมกัน)?
True

ผลลัพธ์ True เพราะช่วง [0, 1] และ [1, 2] ทั้งคู่รวมค่า 1 จึงมีการทับซ้อนที่ขอบเขต