Pandas에서 to_tuples() 메서드를 사용하면 IntervalIndex의 각 구간을 (왼쪽, 오른쪽) 형태의 튜플로 구성된 ndarray로 변환할 수 있습니다. 이 메서드는 구간 데이터를 일반적인 튜플 형식으로 다루고 싶을 때 유용합니다.
기본 사용법
먼저 필요한 라이브러리를 임포트합니다.
import pandas as pd
from_breaks() 메서드를 사용해 IntervalArray를 생성합니다. range(5)는 0부터 4까지의 값을 경계(breaks)로 사용하여 4개의 구간을 만듭니다.
index = pd.arrays.IntervalArray.from_breaks(range(5))
생성된 구간을 출력해 확인합니다.
print("IntervalIndex...\n", index)to_tuples() 메서드를 호출하면 각 구간이 (왼쪽, 오른쪽) 튜플 형태의 ndarray로 반환됩니다.
print("\nThe ndarray of Tuples...\n", index.to_tuples())전체 예제 코드
다음은 지금까지 설명한 내용을 모두 포함한 완전한 코드입니다.
import pandas as pd
# IntervalArray 생성
index = pd.arrays.IntervalArray.from_breaks(range(5))
# 구간 출력
print("IntervalIndex...\n", index)
# 구간 길이 출력
print("\nIntervalIndex length...\n", index.length)
# 튜플 형태의 ndarray 반환
print("\nThe ndarray of Tuples...\n", index.to_tuples())실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
IntervalIndex... <IntervalArray> [(0, 1], (1, 2], (2, 3], (3, 4]] Length: 4, dtype: interval[int64, right] IntervalIndex length... Int64Index([1, 1, 1, 1], dtype='int64') The ndarray of Tuples... [(0, 1) (1, 2) (2, 3) (3, 4)]
결과 해설
출력 결과를 살펴보면 다음과 같은 특징을 확인할 수 있습니다.
구간 정보: from_breaks(range(5))는 기본적으로 right(오른쪽 포함) 방식으로 닫힌 구간을 생성합니다. 즉, (0, 1], (1, 2], (2, 3], (3, 4] 네 개의 구간이 만들어지며, 각 구간의 dtype은 interval[int64, right]입니다.
구간 길이: length 속성은 각 구간의 길이를 반환하며, 모든 구간의 길이가 1임을 확인할 수 있습니다.
튜플 변환 결과: to_tuples() 메서드는 구간의 닫힘 여부와 관계없이 순수하게 왼쪽 값과 오른쪽 값만을 담은 튜플 배열을 반환합니다. 따라서 [(0, 1), (1, 2), (2, 3), (3, 4)] 형태의 ndarray가 출력됩니다.
이처럼 to_tuples() 메서드는 구간(interval) 데이터를 좌표나 범위 값으로 활용해야 하는 경우, 예를 들어 시각화나 외부 시스템으로 데이터를 전달할 때 매우 편리하게 사용할 수 있습니다.