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

Python Pandas IntervalIndex – get_loc()으로 요청된 레이블의 정수 위치 구하기

Pandas의 IntervalIndex에서 특정 레이블(값)에 해당하는 정수 위치(integer location)를 얻으려면 get_loc() 메서드를 사용하면 됩니다. 이 메서드는 주어진 값이 속한 구간의 인덱스 위치를 반환합니다.

1. 필요한 라이브러리 임포트

먼저 pandas 라이브러리를 임포트합니다.

import pandas as pd

2. Interval 객체 생성

두 개의 Interval 객체를 생성합니다. 기본적으로 Interval은 왼쪽은 열리고 오른쪽은 닫힌 구간(left-open, right-closed)으로 만들어지며, 필요에 따라 closed 매개변수로 닫힘 방식을 지정할 수 있습니다.

interval1 = pd.Interval(50, 75)
interval2 = pd.Interval(75, 90)

3. IntervalIndex 생성

생성한 두 구간을 이용해 IntervalIndex를 만듭니다.

index = pd.IntervalIndex([interval1, interval2])

4. get_loc()으로 정수 위치 확인

요청된 레이블의 정수 위치를 출력해 보겠습니다. 값 75는 두 번째 구간인 (75, 90]에 포함되므로 해당 구간의 위치가 반환됩니다.

print("\nInteger location for requested label...\n", index.get_loc(75))

전체 예제 코드

import pandas as pd

# 두 개의 Interval 객체 생성
# closed 매개변수를 사용해 닫힌 구간 설정 가능
interval1 = pd.Interval(50, 75)
interval2 = pd.Interval(75, 90)

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

# 두 구간으로 IntervalIndex 생성
index = pd.IntervalIndex([interval1, interval2])

# 요청된 레이블의 정수 위치 가져오기
print("\nInteger location for requested label...\n", index.get_loc(75))

실행 결과

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

Interval1...
(50, 75]
Interval2...
(75, 90]

Integer location for requested label...
0

정리

get_loc() 메서드는 IntervalIndex에서 특정 값이 어느 구간에 속하는지 찾을 때 유용합니다. 반환되는 값은 단일 정수 위치일 수도 있고, 값이 여러 구간에 걸쳐 있거나 슬라이스 조건인 경우 슬라이스 객체나 불리언 배열로 반환될 수 있다는 점도 참고하면 좋습니다.