Pandas.to_datetime에서 형식을 지정하는 방법
pandas.to_datetime() 함수를 사용하여 pandas DataFrame의 문자열 열을 날짜/시간 열로 변환할 수 있습니다.
이 함수를 사용할 때 문자열에서 날짜/시간으로 변환할 때 오류를 방지하기 위해 형식 인수를 사용하여 날짜의 형식을 지정할 수 있습니다.
이 함수는 다음 기본 구문을 사용합니다.
df[' datetime '] = pd. to_datetime (df[' my_date_column '], format=' %m%d%Y %H:%M:%S '])
형식 인수에 제공할 수 있는 가장 일반적인 지시문은 다음과 같습니다.
- %m : 0이 포함된 숫자로 표시된 월(01, 02, … 12)
- %d : 0이 포함된 숫자로 표시된 날짜(01, 02, … 31)
- %y : 세기를 숫자로 표현한 연도(2020, 2021, 2022 등)
- %H : 0으로 채워진 숫자(00, 01, … 23)인 시간(24시간제)
- %I : 0(01, 02, … 12)으로 채워진 숫자로 표시된 시간(12시간제)
- %p : AM 또는 PM
- %M : 0으로 완성되는 숫자 형태의 분(00, 01, … 59)
- %S : 0으로 끝나는 숫자 형태의 초(00, 01, … 59)
전체 지침 목록은 이 페이지를 참조하세요.
다음 예에서는 다양한 시나리오에서 to_datetime() 함수의 형식 인수를 사용하는 방법을 보여줍니다.
예: pandas.to_datetime에 형식 지정
소매점에서 다양한 날짜에 발생한 총 매출에 대한 정보가 포함된 다음과 같은 pandas DataFrame이 있다고 가정합니다.
import pandas as pd #createDataFrame df = pd. DataFrame ({' date ': ['10012023 4:15:30', '10042023 7:16:04', '10062023 9:25:00', '10142023 15:30:50', '10152023 18:15:00'], ' sales ': [100, 140, 235, 120, 250]}) #view DataFrame print (df) dirty dates 0 10012023 4:15:30 100 1 10042023 7:16:04 140 2 10062023 9:25:00 235 3 10142023 15:30:50 120 4 10152023 18:15:00 250 #view data type of each column in DataFrame print ( df.dtypes ) date object dirty int64 dtype:object
날짜 열이 현재 문자열(객체) 열임을 알 수 있습니다.
pandas.to_datetime()을 사용하여 이 열을 날짜/시간으로 변환한다고 가정해 보겠습니다.
#attempt to convert date column to datetime format
df[' date '] = pd. to_datetime (df[' date '])
ParserError: month must be in 1..12: 10012023 4:15:30 present at position 0
pandas.to_datetime() 함수가 현재 날짜 열의 날짜 및 시간 형식을 인식하지 못하기 때문에 오류가 발생합니다.
형식 인수를 사용하여 열의 형식을 지정할 수도 있습니다.
#convert date column to datetime format
df[' date '] = pd. to_datetime (df[' date '], format=' %m%d%Y %H:%M:%S ')
#view DataFrame
print (df)
dirty dates
0 2023-10-01 04:15:30 100
1 2023-10-04 07:16:04 140
2 2023-10-06 09:25:00 235
3 2023-10-14 15:30:50 120
4 2023-10-15 18:15:00 250
#view updated type of each column
print ( df.dtypes )
date datetime64[ns]
dirty int64
dtype:object
날짜 열이 날짜/시간 열로 성공적으로 변환되었으며 형식 인수를 사용하여 날짜 열의 정확한 형식을 지정했기 때문에 오류가 발생하지 않았음을 확인할 수 있습니다.
참고 : 여기에서 pandas to_datetime() 함수에 대한 전체 문서를 찾을 수 있습니다.
추가 리소스
다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
Pandas에서 날짜 범위를 만드는 방법
Pandas에서 타임스탬프를 날짜/시간으로 변환하는 방법
팬더에서 두 날짜의 차이를 계산하는 방법