파이썬/데이터프레임 다루기

Pandas에서 Timedelta 이해하기

Data Jun 2025. 8. 31. 11:34

데이터 분석을 하다 보면 날짜와 시간을 다루는 일이 많습니다. Pandas에서는 Timedelta라는 객체를 제공하는데, 이 객체는 단순히 “시간 차이”뿐만 아니라 “시간 간격”이라는 의미도 동시에 가집니다. 이번 글에서는 Timedelta의 두 가지 성격을 간단히 정리해보겠습니다.

 

두 시점의 차이 (Difference of two times)

Timedelta는 두 시점의 뺄셈 결과로 얻어집니다.

import pandas as pd

t1 = pd.to_datetime("2022-10-17")
t2 = pd.to_datetime("2022-10-20")

diff = t2 - t1
print(diff)

출력 결과

3 days

t2 - t1 연산을 통해 얻어진 Timedelta는 *“10월 17일과 10월 20일 사이의 3일 차이”*를 나타냅니다.

 

시간 간격 자체 (Duration)

 

Timedelta는 단순히 시간 간격 그 자체를 표현할 수도 있습니다.
이 경우에는 특정 시점에 더하거나 빼서 새로운 시점을 계산할 수 있습니다.

from datetime import timedelta

t1 = pd.to_datetime("2022-10-17")

new_time = t1 + timedelta(days=2)
print(new_time)

출력 결과

2022-10-19 00:00:00

2022-10-17에 2일이라는 시간 간격을 더해 새로운 시점인 2022-10-19가 만들어집니다.

 

정리

  • Timedelta는 두 시점의 차이로 얻어질 수 있고,
  • 동시에 시점에 더하거나 뺄 수 있는 시간 간격으로도 활용됩니다.

즉,
시점 + Timedelta = 새로운 시점
이라는 관계가 항상 성립합니다.

 

Timedelta는 “차이”와 “간격”이라는 두 얼굴을 가진 객체라고 이해하면, 날짜·시간 계산을 훨씬 직관적으로 다룰 수 있습니다.