logo

날짜와 시간 다루기

주요 개념

  • Timestamp: 하나의 날짜와 시간
  • Timedelta: 고정된 시간 간격
  • DateOffset: 달력 기준 날짜 계산

실습 프롬프트

🤖 AI 프롬프트
파이썬으로 날짜의 연·월·요일을 확인하고, 하루 뒤·한 달 뒤·다음 월요일의 날짜를 구하는 예제를 만들어줘.
고정된 시간 간격을 더하는 것과 달력을 기준으로 날짜를 계산하는 것의 차이를 설명해줘.

하나의 날짜와 시간

  • pd.to_datetime(): 문자열을 날짜·시간 자료형으로 변환
import pandas as pd
date = pd.to_datetime('2025-06-20')
date
실행 결과
Timestamp('2025-06-20 00:00:00')

날짜와 시간 정보

date.year  # 년
실행 결과
2025
date.month  # 월
실행 결과
6
date.week  # ISO 기준 주 번호
실행 결과
25
date.day  # 일
실행 결과
20
date.weekday()  # 요일
실행 결과
4
  • 요일 번호: 월요일 0, 화요일 1, 수요일 2, 목요일 3, 금요일 4, 토요일 5, 일요일 6
  • 2025-06-20: 금요일이므로 요일 번호는 4
date.hour  # 시
실행 결과
0
date.minute  # 분
실행 결과
0
date.second  # 초
실행 결과
0

고정된 간격의 기간 더하기

  • pd.Timedelta(): 길이가 고정된 시간 간격
delta = pd.Timedelta(1, 'D')  # 1일
date + delta
실행 결과
Timestamp('2025-06-21 00:00:00')
단위 의미
W 주
D 일
h 시
m 또는 min 분
s 초
  • 년(Y)과 월(M): 길이가 일정하지 않아 Timedelta에서 지원하지 않음

달력 기준의 날짜 계산

  • pd.DateOffset(): 달력을 기준으로 년·월·요일 등을 계산
date + pd.DateOffset(years=1)  # 1년 후
실행 결과
Timestamp('2026-06-20 00:00:00')
date + pd.DateOffset(months=3)  # 3개월 후
실행 결과
Timestamp('2025-09-20 00:00:00')
date + pd.DateOffset(weekday=0)  # 월요일로 이동
실행 결과
Timestamp('2025-06-23 00:00:00')
  • weekday=0: 해당 날짜가 월요일이면 그대로 유지, 그 외에는 다음 월요일로 이동

퀴즈

문제 1 / 1맞음: 0힌트: 0틀림: 0채점중: 0남음: 1

날짜에 달력 기준으로 3개월을 더하려면 어떤 방법이 적절한가요?

  • ○date + pd.Timedelta(3, 'D')
  • ○date + pd.DateOffset(months=3)
  • ○date + pd.Timedelta(90, 'D')
  • ○date + pd.DateOffset(days=3)

퀴즈를 풀려면 대화형 기능을 불러와야 합니다.

Previous
시계열 데이터