akaSonny
파이썬 python datetime 모듈 이용하기 본문
데이터 처리할 때 datetime 모듈을 상당히 많이 쓰는데, 맨날 쓰고 까먹고 검색하고 무한 반복이라 내가 자주 쓰는 것들 정리용 포스팅
1. datetime to string : strftime 메소드 이용 (f: format)
import datetime
date = datetime.datetime(2021, 12, 28)
date_string = date.strftime("%Y-%m-%d")
date_string
# 출력 : '2021-12-28'
2. string to datetime : strptime 메소드 이용 (p: parse)
import datetime
date = datetime.datetime.strptime('2021-12-28', '%Y-%m-%d')
date
# 출력 : datetime.datetime(2021, 12, 28, 0, 0)
3. 오늘 날짜로부터 특정 기간(시간) 후의 날짜(시간)를 알고 싶을 때 : timedelta 이용
import datetime
# 날짜
datetime.datetime(2021, 12, 28) + datetime.timedelta(days=100)
# 출력 : datetime.datetime(2022, 4, 7, 0, 0)
# 시간
datetime.datetime(2021, 12, 28, 0) + datetime.timedelta(hours=100)
# 출력 : datetime.datetime(2022, 1, 1, 4, 0)
후가 아니라 전을 알고 싶다면 그냥 + 가 아니라 - 해주면 된다.
* 참고로 두 날짜 간의 차이를 알고 싶다면 두 datetime 타입을 빼주면 된다. 이 때 출력은 timedelta 형식으로 나옴!
import datetime
datetime.datetime(2021, 12, 28) - datetime.datetime(2021, 12, 25)
# 출력 : datetime.timedelta(days=3)
4. day of year (doy) 가 주어졌을 때 날짜 구하기 (doy to datetime) : timedelta를 사용하면 된다.
가끔 데이터를 볼 때 날짜가 아니라 doy로 주어지는 경우가 있는데, 좀 빡췸
import datetime
doy = 100
year = 2021
date = datetime.datetime(year, 1, 1) + datetime.timedelta(doy-1)
date
# 출력 : datetime.datetime(2021, 4, 10, 0, 0)
그냥 그 해의 1월 1일에서 doy-1 을 더해주면 된다. 짱 쉽! 지만 생각하기 어려웠다 ..
일단 지금 당장 쓰고 있고 자주 사용한 것들은 여기까지인데 더 생각나거나 새로운걸 쓰게 됐을 때 무한 수정 예정
'Study (Programming) > Python' 카테고리의 다른 글
[python/pandas] DataFrame groupby 이용하기 (0) | 2023.06.29 |
---|---|
[python/pandas] DataFrame csv 파일 읽기, 인덱스 찾기 (0) | 2023.04.25 |
[파이썬/python] 반복문으로 변수 만들기 (globals) (1) | 2023.03.22 |
활성화 함수 (Activation Function) 정리 (0) | 2023.01.05 |
파이썬 문자열 포맷팅 python string format 정리 (0) | 2022.09.08 |