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

Pandas IntervalArray에서 각 구간(Interval)의 왼쪽 끝점을 인덱스로 가져오는 방법

Pandas의 IntervalArray에서 각 구간(Interval)의 왼쪽 끝점을 Index 형태로 반환하려면 array.left 속성을 사용하면 됩니다. 이 속성은 IntervalArray에 포함된 모든 구간의 시작 지점(왼쪽 경계값)을 모아 하나의 Index 객체로 만들어 반환합니다.

필수 라이브러리 임포트

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

import pandas as pd

Interval 객체 생성

두 개의 Interval 객체를 생성합니다. Interval은 시작값과 끝값을 지정하여 만들 수 있으며, 기본적으로 왼쪽은 열려 있고 오른쪽은 닫혀 있는 '(a, b]' 형태로 생성됩니다.

interval1 = pd.Interval(10, 25)
interval2 = pd.Interval(15, 70)

생성된 구간 출력

생성한 두 구간을 화면에 출력해 확인합니다.

print("Interval1...\n", interval1)
print("Interval2...\n", interval2)

IntervalArray 생성

앞서 만든 Interval 객체들을 사용하여 새로운 IntervalArray를 구성합니다.

array = pd.arrays.IntervalArray([interval1, interval2])

왼쪽 끝점 가져오기

array.left 속성을 호출하여 IntervalArray 내 각 구간의 왼쪽 끝점을 Index 형태로 출력합니다.

print("\nIntervalArray의 각 구간 왼쪽 끝점(Index)...\n", array.left)

전체 예제 코드

다음은 위 과정을 모두 포함한 전체 코드입니다.

import pandas as pd

# 두 개의 Interval 객체 생성
interval1 = pd.Interval(10, 25)
interval2 = pd.Interval(15, 70)

# 구간 출력
print("Interval1...\n", interval1)
print("Interval2...\n", interval2)

# Interval 객체들로 새로운 IntervalArray 구성
array = pd.arrays.IntervalArray([interval1, interval2])

# IntervalArray 출력
print("\n우리가 만든 IntervalArray...\n", array)

# IntervalArray의 길이 확인
# 각 구간의 길이를 나타내는 항목들을 가진 Index를 반환합니다.
print("\nIntervalArray의 길이...\n", array.length)

# 왼쪽 끝점 가져오기
print("\nIntervalArray의 각 구간 왼쪽 끝점(Index)...\n", array.left)

실행 결과

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

Interval1...
(10, 25]
Interval2...
(15, 70]

우리가 만든 IntervalArray...
<IntervalArray>
[(10, 25], (15, 70]]
Length: 2, dtype: interval[int64, right]

IntervalArray의 길이...
Int64Index([15, 55], dtype='int64')

IntervalArray의 각 구간 왼쪽 끝점(Index)...
Int64Index([10, 15], dtype='int64')

정리

array.left 속성은 IntervalArray의 각 구간에서 왼쪽(시작) 끝점만 추출하여 Int64Index 형태로 반환합니다. 위 예제에서는 첫 번째 구간 (10, 25]의 왼쪽 끝점인 10과, 두 번째 구간 (15, 70]의 왼쪽 끝점인 15가 각각 추출되어 [10, 15]라는 Index로 반환된 것을 확인할 수 있습니다. 참고로 오른쪽 끝점이 필요한 경우에는 array.right 속성을, 각 구간의 길이가 필요한 경우에는 array.length 속성을 사용하면 됩니다.