날짜 변환이 안돼요...
조회수 718회
제가 크롤링해서 얻어온 날짜가 22.01.16. 이런 형태로 나와 데이트타임으로 변경시 있지도 않은 시간대로 변경되는 버그가 발생합니다. 이런 상황에서는 어떻게 날짜를 변경해야 올바르게 날짜로 변환할 수 있을까요??
1 답변
-
pd.to_datetime
을 사용하고,format
인자로 형식을 주면 될 듯 합니다.-
datetime.datetime.strptime
은 하나의 문자열을 변환해 줍니다. pd.Series 나 list 에는 적용할 수 없습니다.
>>> import pandas as pd >>> df = pd.DataFrame({"Date":[ "22.01.16", "22.01.15", "22.01.14", "22.01.13" ]}) >>> pd.to_datetime(df["Date"], format="%y.%m.%d") 0 2022-01-16 1 2022-01-15 2 2022-01-14 3 2022-01-13 Name: Date, dtype: datetime64[ns] >>> df.info() <class 'pandas.core.frame.DataFrame'> RangeIndex: 4 entries, 0 to 3 Data columns (total 1 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Date 4 non-null object dtypes: object(1) memory usage: 160.0+ bytes >>> df["Date_datetime"] = pd.to_datetime(df["Date"], format="%y.%m.%d") >>> df Date Date_datetime 0 22.01.16 2022-01-16 1 22.01.15 2022-01-15 2 22.01.14 2022-01-14 3 22.01.13 2022-01-13 >>> df.info() <class 'pandas.core.frame.DataFrame'> RangeIndex: 4 entries, 0 to 3 Data columns (total 2 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Date 4 non-null object 1 Date_datetime 4 non-null datetime64[ns] dtypes: datetime64[ns](1), object(1) memory usage: 192.0+ bytes
댓글 입력