Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python Pandas – IntervalIndex에 겹치는 간격이 있는지 확인하는 방법

IntervalIndex에 겹치는(중복되는) 구간이 있는지 확인하려면 IntervalIndex.is_overlapping 속성을 사용하면 됩니다. 이 속성은 구간들이 서로 겹치면 True, 그렇지 않으면 False를 반환합니다.

먼저 필요한 라이브러리를 임포트합니다.

import pandas as pd

IntervalIndex 생성하기

튜플 리스트를 사용하여 IntervalIndex를 생성합니다. 아래 예제에서는 (10, 20]과 (15, 25] 두 구간을 만드는데, 두 구간은 15~20 구간에서 서로 겹칩니다.

interval = pd.IntervalIndex.from_tuples([(10, 20), (15, 25)])

생성된 IntervalIndex 확인하기

생성한 IntervalIndex를 출력하여 내용을 확인합니다.

print("IntervalIndex...\n", interval)

구간 겹침 여부 확인하기

is_overlapping 속성을 사용해 구간이 서로 겹치는지 확인합니다.

print("\nIs the interval overlapping?\n", interval.is_overlapping)

전체 예제 코드

다음은 지금까지의 과정을 모두 포함한 전체 코드입니다.

import pandas as pd

# IntervalIndex 생성
interval = pd.IntervalIndex.from_tuples([(10, 20), (15, 25)])

# IntervalIndex 출력
print("IntervalIndex...\n", interval)

# 각 구간의 길이 출력
print("\nIntervalIndex length...\n", interval.length)

# 구간이 겹치는지 여부 확인
print("\nIs the interval overlapping?\n", interval.is_overlapping)

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

IntervalIndex...
IntervalIndex([(10, 20], (15, 25]], dtype='interval[int64, right]')

IntervalIndex length...
Int64Index([10, 10], dtype='int64')

Is the interval overlapping?
True

결과를 보면 is_overlapping 속성이 True를 반환했습니다. 이는 (10, 20]과 (15, 25] 두 구간이 15부터 20까지의 범위에서 서로 겹치기 때문입니다. 만약 구간들이 겹치지 않는다면 False가 반환됩니다.