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

Python Pandas – Timedelta 객체의 구성 요소를 namedtuple 형태로 반환하는 방법


Python Pandas에서 Timedelta 객체의 세부 구성 요소를 확인하려면 timedelta.components 속성을 사용하면 됩니다. 이 속성은 일(days), 시간(hours), 분(minutes), 초(seconds) 등의 정보를 namedtuple과 유사한 형태로 반환합니다.

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

import pandas as pd

Timedelta 객체란?

TimeDelta는 Python 표준 datetime 라이브러리의 timedelta를 다른 방식으로 표현한 개념으로, 두 날짜 또는 시간 사이의 기간(차이)을 나타냅니다. Pandas에서는 pd.Timedelta() 함수를 사용해 문자열 형태의 기간을 간편하게 객체로 만들 수 있습니다.

timedelta = pd.Timedelta('1 days 10 min 20 s')

구성 요소 반환하기

namedtuple과 유사한 구성 요소를 반환하려면 components 속성에 접근하면 됩니다.

timedelta.components

전체 예제 코드

다음은 지금까지의 내용을 정리한 전체 코드입니다.

import pandas as pd

# TimeDeltas는 Python 표준 datetime 라이브러리에서 시간 차이를 다른 방식으로 표현한 것입니다.
# Timedelta 객체 생성
timedelta = pd.Timedelta('1 days 10 min 20 s')

# Timedelta 출력
print("Timedelta...\n", timedelta)

# namedtuple과 유사한 구성 요소 반환
res = timedelta.components

# 구성 요소 출력
print("\nComponent...\n", res)

실행 결과

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

Timedelta...
 1 days 00:10:20

Component...
 Components(days=1, hours=0, minutes=10, seconds=20, milliseconds=0, microseconds=0, nanoseconds=0)

결과에서 확인할 수 있듯이, components 속성은 days, hours, minutes, seconds, milliseconds, microseconds, nanoseconds까지 총 7개의 필드를 가진 객체를 반환합니다. 이를 활용하면 하나의 기간 데이터를 단위별로 분해해 더 정밀하게 다룰 수 있어, 시계열 데이터 분석이나 로그 처리 작업에서 매우 유용합니다.