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

Python Pandas – 반개방(Left-Closed) 구간 만들고 끝점 포함 여부 확인하기

개요

Python Pandas에서 반개방(half-open) 구간을 생성하려면 pandas.Interval() 함수를 사용하고, closed 매개변수를 'left'로 설정하면 됩니다. 반개방 구간이란 왼쪽 끝점은 포함하지만 오른쪽 끝점은 제외하는 구간을 의미합니다.

구간에 특정 값이 포함되어 있는지, 즉 끝점의 존재 여부를 확인할 때는 파이썬의 in 연산자를 활용합니다.

필요한 라이브러리 임포트

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

import pandas as pd

반개방 구간 생성하기

closed 매개변수에 'left' 값을 지정하여 반개방 구간을 만듭니다. 예를 들어 closed='left'일 때 반개방 구간 [0, 5)는 수학적으로 0 <= x < 5로 표현됩니다. 즉, 0은 구간에 포함되지만 5는 포함되지 않습니다.

interval = pd.Interval(left=0, right=20, closed='left')

생성된 구간을 화면에 출력해 보겠습니다.

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

끝점 포함 여부 확인하기

in 연산자를 사용해 구간 내 요소의 존재 여부를 확인할 수 있습니다. 아래 예제는 closed='left'로 설정된 구간에는 왼쪽 끝점만 포함되고 오른쪽 끝점은 포함되지 않음을 보여줍니다.

print("\nThe left-most element exists in the Interval? = \n",0 in interval)
print("\nThe right-most element exists in the Interval? = \n",20 in interval)

전체 예제 코드

지금까지 설명한 내용을 하나로 정리한 전체 코드입니다.

import pandas as pd

# closed 매개변수에 'left' 값을 지정하여 반개방 구간 생성
# closed='left'일 때 반개방 구간 [0, 5)는 0 <= x < 5로 표현됨
interval = pd.Interval(left=0, right=20, closed='left')

# 구간 출력
print("Interval...\n",interval)

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

# 구간 내 요소 존재 여부 확인
# closed='left'인 경우 왼쪽 끝점만 포함됨
print("\nThe left-most element exists in the Interval? = \n",0 in interval)
print("\nThe right-most element exists in the Interval? = \n",20 in interval)

실행 결과

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

Interval...
[0, 20)

Interval length...
20

결과 해석

출력 결과에서 알 수 있듯이 구간은 [0, 20) 형태로 표시되며, 대괄호 [는 왼쪽 끝점 0이 포함됨을, 괄호 )는 오른쪽 끝점 20이 제외됨을 나타냅니다. 따라서 0 in intervalTrue를 반환하고, 20 in intervalFalse를 반환합니다. 구간의 길이는 오른쪽 끝값에서 왼쪽 끝값을 뺀 20으로 계산됩니다.