PeriodIndex 객체에서 초(second) 값 가져오기
Python의 Pandas 라이브러리에서 PeriodIndex 객체에 저장된 각 기간(period)의 초(second) 값을 추출하려면 PeriodIndex.second 속성을 사용하면 됩니다. 이 속성은 PeriodIndex 내 모든 요소의 초 값을 정수 형태로 반환합니다.
먼저 필요한 라이브러리를 임포트합니다.
import pandas as pd
다음으로 PeriodIndex 객체를 생성합니다. PeriodIndex는 시간상 규칙적인 기간을 나타내는 서수(ordinal) 값을 담고 있는 불변(immutable) ndarray입니다. 아래 예제에서는 freq 매개변수를 사용해 빈도를 'S'(초 단위)로 설정했습니다.
periodIndex = pd.PeriodIndex(['2021-09-25 07:30:35', '2019-10-30 04:15:45', '2021-07-15 02:55:15', '2022-06-25 09:40:55'], freq="S")
생성된 PeriodIndex 객체를 출력해 확인합니다.
print("PeriodIndex...\n", periodIndex)이제 PeriodIndex 객체에서 초 값을 추출하여 출력합니다.
print("\nThe seconds from the PeriodIndex object...\n", periodIndex.second)전체 예제 코드
아래는 지금까지 설명한 내용을 모두 포함한 전체 코드입니다.
import pandas as pd
# PeriodIndex 객체 생성
# PeriodIndex는 시간상 규칙적인 기간을 나타내는 서수 값을 담는 불변 ndarray입니다.
# "freq" 매개변수를 사용해 빈도를 설정합니다.
periodIndex = pd.PeriodIndex(['2021-09-25 07:30:35', '2019-10-30 04:15:45',
'2021-07-15 02:55:15', '2022-06-25 09:40:55'], freq="S")
# PeriodIndex 객체 출력
print("PeriodIndex...\n", periodIndex)
# PeriodIndex 빈도 객체 출력
print("\nPeriodIndex frequency object...\n", periodIndex.freq)
# 문자열 형태의 PeriodIndex 빈도 출력
print("\nPeriodIndex frequency object as a string...\n", periodIndex.freqstr)
# PeriodIndex 객체에서 초 값 출력
print("\nThe seconds from the PeriodIndex object...\n", periodIndex.second)실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
PeriodIndex... PeriodIndex(['2021-09-25 07:30:35', '2019-10-30 04:15:45', '2021-07-15 02:55:15', '2022-06-25 09:40:55'], dtype='period[S]') PeriodIndex frequency object... <Second> PeriodIndex frequency object as a string... S The seconds from the PeriodIndex object... Int64Index([35, 45, 15, 55], dtype='int64')
실행 결과에서 볼 수 있듯이, periodIndex.second 속성은 각 날짜·시간 값에서 초 부분만 추출하여 [35, 45, 15, 55]라는 정수 인덱스 형태로 반환합니다. 이처럼 PeriodIndex의 다양한 속성(.hour, .minute, .second 등)을 활용하면 시계열 데이터에서 원하는 시간 단위의 정보를 손쉽게 얻을 수 있습니다.