IntervalIndex의 구간이 왼쪽(left), 오른쪽(right), 양쪽(both) 또는 어느 쪽도 아닌(neither) 방향으로 닫혀 있는지 확인하려면 interval.closed 속성을 사용하면 됩니다.
이 속성은 해당 IntervalIndex가 어떤 방향으로 닫혀 있는지를 문자열 형태로 반환해 주므로, 구간의 경계 처리 방식을 코드로 검증할 때 매우 유용합니다.
필요한 라이브러리 가져오기
먼저 pandas 라이브러리를 임포트합니다.
import pandas as pd
IntervalIndex 생성하기
from_arrays() 메서드를 사용하여 시작 값 배열과 끝 값 배열로부터 IntervalIndex를 생성합니다.
interval = pd.IntervalIndex.from_arrays([5, 10, 15], [15, 20, 25])
위 코드는 (5, 15], (10, 20], (15, 25] 세 개의 구간을 가지는 IntervalIndex를 만듭니다. 기본 설정에서는 오른쪽 경계만 포함되는 'right' 방식으로 닫힌 구간이 생성됩니다.
생성된 IntervalIndex 출력하기
print("IntervalIndex...\n", interval)구간 길이 확인하기
각 구간의 길이도 함께 확인해 보겠습니다.
print("\nIntervalIndex length...\n", interval.length)닫힌 방향(closed) 확인하기
closed 속성을 사용하여 IntervalIndex가 왼쪽, 오른쪽, 양쪽 또는 어느 쪽도 아닌 방향으로 닫혀 있는지 확인합니다.
print("\nChecking for the type of IntervalIndex...\n", interval.closed)전체 예제 코드
다음은 지금까지 설명한 내용을 모두 포함한 전체 코드입니다.
import pandas as pd
# IntervalIndex 생성
interval = pd.IntervalIndex.from_arrays([5, 10, 15], [15, 20, 25])
# IntervalIndex 출력
print("IntervalIndex...\n", interval)
# 구간 길이 출력
print("\nIntervalIndex length...\n", interval.length)
# IntervalIndex가 닫혀 있는 방향 확인
print("\nChecking for the type of IntervalIndex...\n", interval.closed)실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
IntervalIndex... IntervalIndex([(5, 15], (10, 20], (15, 25]], dtype='interval[int64, right]') IntervalIndex length... Int64Index([10, 10, 10], dtype='int64') Checking for the type of IntervalIndex... Right
결과 해석
출력 결과를 보면 다음과 같은 정보를 확인할 수 있습니다.
- dtype='interval[int64, right]': 각 구간이 int64 타입이며 오른쪽 방향으로 닫혀 있음을 의미합니다.
- length: 각 구간의 길이가 모두 10임을 보여줍니다. (예: 15 - 5 = 10)
- closed 속성 값 'Right': IntervalIndex가 오른쪽 경계를 포함하고 왼쪽 경계는 제외한다는 뜻입니다. 즉, 구간 (5, 15]에서 5는 포함되지 않고 15는 포함됩니다.
참고로 closed 속성이 반환할 수 있는 값은 'left', 'right', 'both', 'neither' 네 가지입니다. 구간 생성 시 closed 매개변수에 이 값을 지정하면 원하는 경계 포함 방식으로 IntervalIndex를 만들 수 있습니다.