날짜와 시간 다루기
주요 개념
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: 해당 날짜가 월요일이면 그대로 유지, 그 외에는 다음 월요일로 이동
퀴즈
날짜에 달력 기준으로 3개월을 더하려면 어떤 방법이 적절한가요?
퀴즈를 풀려면 대화형 기능을 불러와야 합니다.