양쪽 끝이 모두 닫힌(closed) 구간(Interval)이 비어 있는지 확인하려면 interval.is_empty 속성을 사용하면 됩니다. 먼저 필요한 라이브러리를 임포트합니다.
import pandas as pd
양쪽이 닫힌 구간 생성하기
Pandas에서 closed 매개변수의 값을 'both'로 설정하면 시작점과 끝점을 모두 포함하는 닫힌 구간을 만들 수 있습니다.
interval = pd.Interval(0, 0, closed='both')
생성한 구간을 출력해 보겠습니다.
print("Interval...\n",interval)구간이 비어 있는지 확인하기
양쪽이 닫힌 상태에서 구간이 비어 있는지 확인하려면 is_empty 속성을 사용합니다. 여기서 중요한 점은, 단일 점만 포함하는 구간이라도 그 점이 실제로 구간에 포함되어 있다면 비어 있지 않은 것으로 판단되어 False가 반환된다는 것입니다. 반면 closed 값이 'left', 'right', 'neither'인 경우에는 시작점과 끝점이 같으면 해당 점이 구간에 포함되지 않아 True가 반환됩니다.
print("\nIs Interval empty? \n",interval.is_empty)예제 코드
다음은 전체 코드입니다.
import pandas as pd
# 양쪽이 모두 닫힌 구간
# 'closed' 매개변수를 'both'로 설정하여 구간 생성
interval = pd.Interval(0, 0, closed='both')
# 구간 출력
print("Interval...\n",interval)
# 구간 길이 출력
print("\nInterval length...\n",interval.length)
# 양쪽이 닫힌 상태에서 구간이 비어 있는지 확인
# 단일 점을 포함하는 구간은 비어 있지 않으므로 False 반환
print("\nIs Interval empty? \n",interval.is_empty)실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Interval... [0, 0] Interval length... 0 Is Interval empty? False
결과 해석
시작값과 끝값이 모두 0인 구간 [0, 0]은 길이가 0이지만, closed='both'로 설정했기 때문에 점 0이 구간에 포함됩니다. 따라서 이 구간은 유효한 값을 하나 포함하고 있으므로 is_empty는 False를 반환합니다. 이처럼 is_empty 속성은 단순히 구간의 길이가 아니라, 구간에 실제로 포함되는 값이 존재하는지를 기준으로 판단한다는 점을 기억하면 됩니다.