가끔 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
'판다스 > 판다스 팁' 카테고리의 다른 글
[pandas] 데이터 프레임에서 퍼센트(%)로 수치를 표기하는 방법 (0) | 2023.05.26 |
---|---|
[pandas] 주피터 노트북에서 여러개의 데이터 프레임을 가로로 출력하기 (0) | 2023.05.26 |
[pandas] 구글 코랩과 주피터 노트북 비교 : 파일에서 데이터 프레임을 불러오는 방식의 차이 (0) | 2023.05.25 |
[pandas] 데이터 프레임 2개를 concat할 때 열을 교대로 concat하는 방법 (0) | 2023.05.04 |
[pandas] assign 함수로 열을 만들 때 특수문자가 있는 경우 해결 방법 (0) | 2023.05.03 |