본문 바로가기
판다스/판다스 팁

[pandas] 24시를 넘는 시간표기를 정상적인 datetime으로 바꾸는 방법

by 김판다t 2023. 5. 2.

가끔 24시를 넘는 시간표기를 하는 곳이 있다 (특히 영화관)

가령 2023-01-02 00:20:00의 타임스탬프를 전일인 2023-01-01을 기준으로 24:20:00으로 표현한다

이런 데이터를 정상적인 datetime으로 바꿔보자

 
 
import pandas as pd
s1 = pd.Series(['2022-01-01 23:50:00', '2022-01-01 24:10:00'])
s1

 

 

 

 

 

s1은 24시가 넘는 시간을 갖고 있는 문자열 데이터이다.

아래와 같은 코드를 사용하면 쉽게 해결된다

 

 

spl = s1.str.split(' ')
pd.to_datetime(spl.str[0]) + pd.to_timedelta(spl.str[1])

 

 

2022-01-01 24:10:00 -> 2022-01-02 00:10:00으로 변환되었다

 

 

 

이해를 돕기위한 중간과정 풀이

 

변수 spl은 판다스의 문자열 함수 str.split을 적용한 것이며 결과는 다음과 같다

 

spl = s1.str.split(' ')

 

 

 

 

 

 

 

유튜브에서 판다스 강의 중입니다

 

https://www.youtube.com/@KimPandas