Python, datetime, numpy에서 날짜, 시간, 타임스탬프 변환
- datetime: 날짜와 시간을 표현하고 조작하는 데 사용되는 표준 라이브러리입니다.
- numpy: 수치 계산과 데이터 분석을 위한 라이브러리입니다.
- pandas: 데이터 분석 및 조작을 위한 라이브러리입니다. pandas는 datetime 및 numpy 날짜 및 시간 형식을 지원합니다.
이 세 라이브러리 간의 날짜, 시간 및 타임스탬프 변환에 대한 자세한 내용은 다음과 같습니다.
datetime에서 numpy datetime64로 변환
datetime 객체를 numpy datetime64로 변환하려면 np.datetime64
함수를 사용할 수 있습니다.
import datetime
import numpy as np
dt = datetime.datetime(2024, 6, 16, 3, 10, 0)
dt64 = np.datetime64(dt)
print(dt64)
이 코드는 다음과 같은 출력을 생성합니다.
numpy.datetime64('2024-06-16T03:10:00')
numpy datetime64에서 datetime으로 변환
numpy datetime64 객체를 datetime 객체로 변환하려면 .tolist()
메서드를 사용할 수 있습니다.
import datetime
import numpy as np
dt64 = np.datetime64('2024-06-16T03:10:00')
dt = dt64.tolist()
print(dt)
datetime.datetime(2024, 6, 16, 3, 10, 0)
pandas Timestamp 객체를 numpy datetime64로 변환하려면 .to_numpy()
메서드를 사용할 수 있습니다.
import pandas as pd
import numpy as np
timestamp = pd.Timestamp('2024-06-16 03:10:00')
dt64 = timestamp.to_numpy()
print(dt64)
numpy.datetime64('2024-06-16T03:10:00')
import pandas as pd
import numpy as np
dt64 = np.datetime64('2024-06-16T03:10:00')
timestamp = pd.Timestamp(dt64)
print(timestamp)
2024-06-16 03:10:00
참고:
- 날짜, 시간 및 타임스탬프를 다루는 다른 방법도 있습니다.
- 특정 작업에 가장 적합한 방법을 선택하는 것이 중요합니다.
- 더 많은 정보는 각 라이브러리의 문서를 참조하십시오.
예제 코드
datetime에서 numpy datetime64로 변환
import datetime
import numpy as np
# datetime 객체 만들기
dt = datetime.datetime(2024, 6, 16, 3, 10, 0)
# datetime을 numpy datetime64로 변환
dt64 = np.datetime64(dt)
# 출력
print(dt64)
numpy.datetime64('2024-06-16T03:10:00')
numpy datetime64에서 datetime으로 변환
import datetime
import numpy as np
# numpy datetime64 객체 만들기
dt64 = np.datetime64('2024-06-16T03:10:00')
# numpy datetime64를 datetime으로 변환
dt = dt64.tolist()
# 출력
print(dt)
datetime.datetime(2024, 6, 16, 3, 10, 0)
pandas Timestamp에서 numpy datetime64로 변환
import pandas as pd
import numpy as np
# pandas Timestamp 객체 만들기
timestamp = pd.Timestamp('2024-06-16 03:10:00')
# pandas Timestamp를 numpy datetime64로 변환
dt64 = timestamp.to_numpy()
# 출력
print(dt64)
numpy.datetime64('2024-06-16T03:10:00')
numpy datetime64에서 pandas Timestamp로 변환
import pandas as pd
import numpy as np
# numpy datetime64 객체 만들기
dt64 = np.datetime64('2024-06-16T03:10:00')
# numpy datetime64를 pandas Timestamp로 변환
timestamp = pd.Timestamp(dt64)
# 출력
print(timestamp)
2024-06-16 03:10:00
Python에서 날짜, 시간 및 타임스탬프 변환을 위한 대체 방법
다음은 몇 가지 예입니다.
- strptime() 및 strftime() 함수:
datetime
모듈에는 날짜 및 시간 문자열을 파싱하고 생성하는 데 사용할 수 있는strptime()
및strftime()
함수가 포함되어 있습니다.
import datetime
# 문자열을 datetime 객체로 변환
dt_str = '2024-06-16 03:10:00'
dt = datetime.datetime.strptime(dt_str, '%Y-%m-%d %H:%M:%S')
print(dt)
# datetime 객체를 문자열로 변환
dt = datetime.datetime(2024, 6, 16, 3, 10, 0)
dt_str = dt.strftime('%Y-%m-%d %H:%M:%S')
print(dt_str)
- time module:
time
모듈은 현재 시간, 날짜 및 타임스탬프와 관련된 다양한 함수를 제공합니다.
import time
# 현재 시간을 timestamp로 변환
timestamp = time.time()
print(timestamp)
# timestamp를 날짜 및 시간 문자열로 변환
dt_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(timestamp))
print(dt_str)
- pytz 라이브러리:
pytz
라이브러리는 다양한 시간대를 처리하는 데 사용할 수 있습니다.
import pytz
import datetime
# UTC 시간대의 datetime 객체 만들기
dt_utc = datetime.datetime(2024, 6, 16, 3, 10, 0, tzinfo=pytz.utc)
# 현재 시간대의 문자열로 변환
dt_local = dt_utc.astimezone(pytz.timezone('America/Los_Angeles'))
dt_str = dt_local.strftime('%Y-%m-%d %H:%M:%S')
print(dt_str)
python datetime numpy