ํ์ด์ฌ์์ ๋ฆฌ์คํธ๋ฅผ ๊ด๋ฆฌํ๋ ๋์ ๋๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ pandas์ ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ๋ ์ง ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ์ผ์ด ์ ๋ฒ ์๋ค. ๋ณธ ํฌ์คํ ์์๋ ํํ๊ฒ ์ฌ์ฉ๋๋ datetime ๋ชจ๋์ ์ฌ์ฉ ์์๋ค์ ๋ ธํธ๋ถ์์ ์์ ํ ๋ด์ญ์ ์ญ ๋ถ์ฌ์ ๋ณด์ฌ์ค์ผ๋ก์จ datetime์ ๋ค์ํ ํํ์ ํ์ฉ์ ๋๊ณ ์ ํ๋ค.
datetime๋งค๋ด์ผ์ ํตํด ๋์ฑ ์์ธํ ํ์ธํ๊ณ ๋ค์ํ ๊ธฐ๋ฅ์ ํญ๋๊ฒ ์ฌ์ฉํ ์๋ ์์ง๋ง, ์ฒ์ ์ฌ์ฉํ๋ ์ฌ์ฉ์์ ์ ์ฅ์์๋ ์๋์์ ๋ณด์ธ ์์๋ค๋ง์ผ๋ก๋ ์ถฉ๋ถํ ๋ง์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์์ผ๋ฆฌ๋ผ ๋ณธ๋ค.
datetime ๋ชจ๋ ์ฌ์ฉํ๊ธฐ¶
import datetime as dt
now()ํจ์๋ฅผ ํตํด ํ์ฌ ์๊ฐ ๋ถ๋ฌ์ค๊ธฐ¶
current_time = dt.datetime.now()
current_time
datetime.datetime๊ฐ์ฒด์ strftimeํจ์๋ฅผ ํตํด ์ํ๋ ํํ๋ก ๋ ์ง-์๊ฐ ์ถ๋ ฅํ๊ธฐ¶
dt.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
datetime๊ฐ์ฒด ์์๋ก ์์ฑํ๊ธฐ¶
old_time = dt.datetime(2018,9,11,0,0,0)
old_time
datetime๊ฐ์ฒด๋ผ๋ฆฌ์ ์ฐ์ฐ์ ํตํด ๋ ์ง-์๊ฐ ์ฐจ์ด ๊ณ์ฐํ๊ธฐ (timedelta ๊ฐ์ฒด)¶
delta_time = current_time - old_time
delta_time
๋ ์ง-์๊ฐ์ผ๋ก๋ถํฐ ํ์์คํฌํ ๊ฐ ์ป์ด์ค๊ธฐ¶
current_time.timestamp()
ํ์์คํฌํ๋ก๋ถํฐ ๋ ์ง-์๊ฐ ์ป์ด์ค๊ธฐ¶
dt.datetime.fromtimestamp(current_time.timestamp())
๋ฌธ์์ด๋ก๋ถํฐ ์๊ฐ ์ป์ด์ค๊ธฐ¶
datestr = '20200921' # ์์์ ๋ ์ง ๋ฌธ์์ด
dt.datetime.strptime(datestr,"%Y%m%d") # ํด๋น ๋ฌธ์์ด์ ์๋ฆฌ์ ๋ฑ ํฌ๋งท์ ๋ง๊ฒ ๋ค์ ๋ฌธ์์ด์ ์
๋ ฅํด์ฃผ์ด์ผ ํจ
์์ ๋ ์ง-์๊ฐ ๊ฐ์ฒด๋ฅผ ๋ ์ง ๊ฐ์ฒด๋ก ๋ณํํ๊ธฐ¶
dt.datetime.strptime(datestr,"%Y%m%d").date() # datetime๊ฐ์ฒด์์ ๋ ์ง ๊ฐ์ฒด date๋ก ๋ณํ
๋ ์ง-์๊ฐ์์ ๋ ์ง๋ ์๊ฐ ๋ํ๊ธฐ/๋นผ๊ธฐ¶
next_time = current_time + dt.timedelta(seconds=30) # 30์ด ๋ํ๊ธฐ
print(next_time)
next_time = current_time + dt.timedelta(hours=1, minutes=10) # 1์๊ฐ 10๋ถ ๋ํ๊ธฐ
print(next_time)
next_time = current_time + dt.timedelta(days=7) # 7์ผ ๋ํ๊ธฐ
print(next_time)
datetime ๊ฐ์ฒด์์ ์ฐ, ์, ์ผ ๋ฑ ์ป์ด์ค๊ธฐ¶
current_time.year # ์ฐ๋
current_time.month # ์
current_time.day # ์ผ
current_time.hour # ์๊ฐ
current_time.minute # ๋ถ
current_time.second # ์ด
๋ ์ง ๊ฐ์ฒด๋ผ๋ฆฌ ์ฐ์ฐํ๊ธฐ¶
date1 = dt.datetime(2020,9,22).date()
date2 = dt.datetime(2020,9,3).date()
date1 - date2
์์ผ ์ป์ด์ค๊ธฐ (์:0, ํ:1, ์:2, ๋ชฉ:3, ๊ธ:4, ํ :5, ์ผ:6)¶
current_time.weekday()
date2.weekday()
๋ ธํธ๋ถ ๋งํฌ: github.com/skyiwalker/gentlesark/blob/master/notebooks/datetime-study.ipynb
๋๊ธ