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

Python Pandas – IntervalIndex의 간격에 특정 값이 포함되어 있는지 요소별로 확인하는 방법

IntervalIndex에 포함된 각 구간(Interval)이 특정 값을 포함하고 있는지 요소별(elementwise)로 확인하려면 Pandas의 IntervalIndex.contains() 메서드를 사용합니다. 이 메서드는 각 구간마다 값이 포함되어 있으면 True, 아니면 False를 담은 불리언 배열을 반환합니다.

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

import pandas as pd

IntervalIndex를 생성합니다 −

interval = pd.IntervalIndex.from_tuples([(10, 20), (15, 25)])

생성된 구간을 화면에 출력합니다 −

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

각 구간이 특정 값(여기서는 13)을 포함하는지 확인합니다 −

print("\nDoes the interval contain a specific value?\n",interval.contains(13))

전체 예제 코드

지금까지 설명한 내용을 모두 담은 전체 코드는 다음과 같습니다 −

import pandas as pd

# Create IntervalIndex
interval = pd.IntervalIndex.from_tuples([(10, 20), (15, 25)])

# Display the interval
print("IntervalIndex...\n",interval)

# Display the interval length
print("\nIntervalIndex length...\n",interval.length)

# Check if the interval contains a specific value
print("\nDoes the interval contain a specific value?\n",interval.contains(13))

실행 결과

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

IntervalIndex...
IntervalIndex([(10, 20], (15, 25]], dtype='interval[int64, right]')

IntervalIndex length...
Int64Index([10, 10], dtype='int64')

Does the interval contain a specific value?
[ True False]

결과 해석

출력 결과에서 알 수 있듯이, IntervalIndex의 기본 설정은 오른쪽이 닫힌(right-closed) 구간입니다. 따라서 첫 번째 구간 (10, 20]은 13을 포함하므로 True가 되고, 두 번째 구간 (15, 25]은 13을 포함하지 않으므로 False가 됩니다. 즉, contains() 메서드는 [True, False] 배열을 반환하여 각 구간별 포함 여부를 한눈에 확인할 수 있습니다.