Python의 Pandas 라이브러리에서 Timedelta 객체가 나타내는 기간을 초 단위로 변환하려면 timedelta.total_seconds() 메서드를 사용하면 됩니다. 이 메서드는 일, 시간, 분, 밀리초 등으로 표현된 시간 간격을 하나의 실수형 초 값으로 반환해 줍니다.
1. 필요한 라이브러리 임포트
먼저 Pandas 라이브러리를 임포트합니다.
import pandas as pd
2. Timedelta 객체 생성
TimeDelta는 Python 표준 datetime 라이브러리의 timedelta를 다른 방식으로 표현한 것입니다. 아래와 같이 문자열 형태로 Timedelta 객체를 생성할 수 있습니다.
timedelta = pd.Timedelta('2 days 11 hours 22 min 25 s 50 ms 45 ns')3. Timedelta 객체 출력하기
생성된 Timedelta 객체를 화면에 출력해 확인합니다.
print("Timedelta...\n", timedelta)4. 총 초(seconds) 구하기
total_seconds() 메서드를 호출하면 해당 기간 전체를 초 단위로 계산한 값을 얻을 수 있습니다.
timedelta.total_seconds()
전체 예제 코드
지금까지의 과정을 하나의 코드로 정리하면 다음과 같습니다.
import pandas as pd
# TimeDelta는 Python 표준 datetime 라이브러리의 timedelta를 다르게 표현한 것입니다.
# Timedelta 객체 생성
timedelta = pd.Timedelta('2 days 11 hours 22 min 25 s 50 ms 45 ns')
# Timedelta 출력
print("Timedelta...\n", timedelta)
# 총 초(total seconds) 계산
res = timedelta.total_seconds()
# 결과 출력: 기간의 총 초 값
print("\nTotal seconds...\n", res)실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Timedelta... 2 days 11:22:25.050000045 Total seconds... 213745.05
출력 결과를 보면 '2일 11시간 22분 25.05초'에 해당하는 기간이 약 213745.05초로 변환된 것을 확인할 수 있습니다. 참고로 total_seconds() 메서드는 나노초(nanoseconds) 단위까지 포함하여 부동소수점 실수 형태로 정밀하게 반환합니다.