Python

[Pandas]시간/날짜 데이터 다루기 : to_datetime(), dt.year, dt.month, dt.day

zzheng 2024. 6. 12. 20:31

이 글에서는 파이썬으로 시간/날짜 데이터를 다루겠습니다. 이를 위해 먼저, 데이터프레임을 만들겠습니다. 

import pandas as pd
data = [['1990-03-02', 90], ['1991-06-08', 95], \
        ['1990-11-22',80], ['1991-01-05', 88]]
names = ['철수', '영이', '길동', '미영']
column_names =['생년월일', '점수']

df1 = pd.DataFrame(data, index=names, columns=column_names)
df1

 

파이썬은 날짜를 문자형으로 다룹니다.

df1.info()

시계열 객체로 변환하기

문자열을 Timestamp로 변환 : to_datetime()함수 사용

df1['생년월일'] = pd.to_datetime(df1['생년월일'])
df1

파이썬은 날짜를 문자형으로 다루기 때문에 type이 달라지는 것을 볼 수 있습니다.

df1.info()

시계열 데이터 활용

날짜 데이터 분리하기 : 연-월-일 정보에서 연,월,일 추출: dt.year, dt.month, dt.day를 사용

df1['년'] = df1['생년월일'].dt.year
df1['월'] = df1['생년월일'].dt.month
df1['일'] = df1['생년월일'].dt.day
df1

날짜를 활용하여 생일이 가장 빠른 사람부터 정렬

df1.sort_values(by='생년월일', ascending=True)